abel="@string/app_name"
? ? ? ? android:theme="@style/AppTheme" >
? ? ? ? ? ? ? ? ? ? android:name="com.xiaoluo.android_intent.MainActivity"
? ? ? ? ? ? android:label="@string/app_name" >
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ?
? ? ? ?
? ? ? ?
? ? ? ? ? ? ? ? ? ? android:name="com.xiaoluo.android_intent.SecondActivity"
? ? ? ? ? ? android:label="SecondActivity">
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ?
? ? ? ?
? ?
这样我们就可以实现Activity直接的值的传递。
二、通过startActivityForResult方法来得到Activity的回传值
在一些情况下,我们通过 A activity跳转到 B activity上,这时希望 A activtiy能从 B activity上得到一些返回值,这个时候我们就不能使用startActivity方法了,而是使用 startActivityForResult方法来完成我们的操作。
例如,我们希望完成下面一个功能,在MainActivity上,写上一个算术表达式,然后跳转到到第二个SecondActivity上,在这个Activity上将第一个Activity的表达式显示出来,然后我们可以输入我们的算术表达式结果,然后点击按钮,将这个结果值又返回给我们的MainActivity,并将结果填充到算术表达式中,具体看如下代码:
activity_main.xml:
? ? xmlns:tools="http://schemas.android.com/tools"
? ? android:layout_width="match_parent"
? ? android:layout_height="match_parent"
? ? android:paddingBottom="@dimen/activity_vertical_margin"
? ? android:paddingLeft="@dimen/activity_horizontal_margin"
? ? android:paddingRight="@dimen/activity_horizontal_margin"
? ? android:paddingTop="@dimen/activity_vertical_margin"
? ? tools:context=".MainActivity" >
? ? ? ? ? ? android:id="@+id/editText1"
? ? ? ? android:layout_width="70dp"
? ? ? ? android:layout_height="wrap_content" />
? ? ? ? ? ? android:id="@+id/textView1"
? ? ? ? android:layout_width="60dp"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/editText1"
? ? ? ? android:text=" + "
? ? ? ? android:textSize="30sp" />
? ? ? ? ? ? android:id="@+id/editText2"
? ? ? ? android:layout_width="60dp"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/textView1" />
? ? ? ? ? ? android:id="@+id/textView2"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/editText2"
? ? ? ? android:text=" = "
? ? ? ? android:textSize="30sp" />
? ? ? ? ? ? android:id="@+id/editText3"
? ? ? ? android:layout_width="70dp"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/textView2" />
? ?
? ? ? ? ? ? android:id="@+id/button"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_below="@id/editText3"
? ? ? ? android:layout_centerInParent="true"
? ? ? ? android:layout_marginTop="30dp"
? ? ? ? android:text="跳转到SecondActivity"/>
second.xml:
? ? android:layout_width="match_parent"
? ? android:layout_height="match_parent" >
? ?
? ? ? ? ? ? android:id="@+id/textView1"
? ? ? ? android:layout_width="70dp"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:textSize="20sp"/>
? ?
? ? ? ? ? ? android:id="@+id/editText1"
? ? ? ? android:layout_width="60dp"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/textView1"/>
? ?
? ? ? ? ? ? android:id="@+id/button1"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_toRightOf="@id/editText1"
? ? ? ? android:text="返回给MainActivity"/>
? ?
然后我们来看看两个Activity
MainActivity:
public class MainActivity extends Activity
{
? ? private Button button;
? ? private EditText editText1;
? ? private EditText editText2;
? ? private EditText editText3;
? ? @Override
? ? protected void onCreate(Bundle savedInstanceState)
? ? {
? ? ? ? super.onCreate