2012-08-14 46 views
1

我学习Android和好奇,想知道好像startActivityForResult()包含startActivity()属性也即可以将其用于发送从所谓的活动接收数据除了像startActivity()数据?可以startActivityForResult()发送数据?

下面是代码:
送出数据活动:

Intent data= new Intent(SendData.this, RecieveData.class); 
Bundle check = new Bundle(); 

check.putString("UmerData", cheese); 
medt.setText(cheese); 
data.putExtras(check); 
startActivityForResult(data, 5); 

应在本次活动接收数据(RecieveData活动)

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.recievedata); 
    Initializek(); 
    Bundle got = getIntent().getExtras(); 
    String ss= got.getString("UmerData"); 
    if(getIntent()!=null && ss!=null) { 
     rt1.setText("Is not Null"); 
    } 
} 

您的帮助将是非常赞赏!

感谢

回答

0

是,startActivity & startActivityForResult,双方采取的意图为PARAM。您可以将启动数据捆绑在intent中,并将其传递给目标活动。

+0

不过,我不能在所谓的活动 – 2012-08-14 21:41:16

+0

接收数据在目标活动,请getIntent(),然后尝试提取意图数据。 – 2012-08-14 21:43:00

+0

已经做到了。我首先检查该getIntent()不为空比提取使用包数据= getIntent()getExtras数据(); 字符串奶酪= data.getString(键); – 2012-08-14 21:45:42

1

当您使用startActivityForResult(),你也必须创建一个名为startActivityForResult()活动中的onActivityResult()方法。 onActivityResult()在这里,您可以访问由你开始,对于结果的Activity存储的意图。

Activity也就是那么开始,你必须调用setResult()存储Intent你在这个数据中

读取存储:http://developer.android.com/reference/android/app/Activity.html#StartingActivities

编辑:误解你的问题。对于通过传递选项的包,我会用这个过载:

startActivity(Intent, int, Bundle)

+0

我明确表示,我正在从此SendData活动发送数据,然后使用onActivityResult接收数据。只是数据没有得到发送使用startActivityForResult – 2012-08-14 22:02:33

+0

对不起,我误读你的标题。我会再看一遍。 – 2012-08-14 22:07:10

+0

通过加入捆绑参数 – 2012-08-14 22:26:46

相关问题