StartActivityForResult

时间:2011-09-22 12:23:04

标签: android android-activity

我有4项活动A,B,C,D。我需要最初开始活动'A'(它由textview,按钮组成),从活动'A'开始我需要启动活动'B'(借助按钮)。

现在,从'B'我需要开始'C'& 'D'活动(条件:Button1(活动'B')被击中然后它应该开始活动'C',Button2(活动'B')被击中然后它应该开始活动'D')。

- 活动'C'由EditText&一个按钮。 - 活动'D'由EditText&一个按钮。

这里当我在活动'C'的编辑文本中输入文字时'D'并按下按钮,结果是输入的文本应出现在活动'A'的TextView中。

我是Android的初学者,请帮我解决这个问题。 在此先感谢。

3 个答案:

答案 0 :(得分:0)

试试这个:  在Activity'C'中创建一个静态变量:

public static String text="";

然后在OnClick按钮中将EditText数据读入String:

按钮上的“活动'C”中单击:

text=edittext.getText().toString();
 Intent i=new Intent(ActivityC.this,ActivityA.class)
 startActivity(in);
 finish();

在活动'A'

在OnResume方法中设置此文本值:

Protected void OnResume()
{
super.OnResume();
textview.setText(Activity'c'.text)
}

这可能对你有帮助。任何疑惑

答案 1 :(得分:0)

所以你想在活动C中传递数据,或者在某些时候将D传回给A?使用应用程序类(google it)并从C或D活动中设置变量,然后在返回A并显示文本时调用所述变量。

答案 2 :(得分:0)

使用`startActivityForResult()可以这样做:

  1. startActivityForResult()用于活动B.
  2. startActivityForResult()用于活动c。
  3. 在活动c中按下按钮,在设置数据后完成活动。
  4. 现在,您将在活动B中的onActivityResult()中接听电话。重复在B中设置数据的过程并完成活动。
  5. 现在,您将在活动A的onActivityResult()中接听电话,现在您已获得数据。
  6. 同样的过程将用于活动D.