Nob*_*sco 18 android android-intent
我正在尝试做一个简单的应用程序Android.我有两个活动(A和B).在B我只想选择一个date.
我开始A,并做:
Intent intent = new Intent();
intent.setClass(this, B.class);
startActivityForResult(intent,1);
Run Code Online (Sandbox Code Playgroud)
然后,在B,我做:
Intent intent = getIntent();
setResult(RESULT_OK);
intent.putExtra("Date",dateSelected);
finish();
Run Code Online (Sandbox Code Playgroud)
而且,在A,我有下一个方法:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==RESULT_OK && requestCode==1){
Bundle bundle = getIntent().getExtras();
String aux = bundle.getString("nuevo");
.....
}
Run Code Online (Sandbox Code Playgroud)
但是data,和bundle,是null.当我调试代码时,我看到在课堂上B,intent有Extras,但是,当我调用finish()并返回时class A,这intent是不可达的.
我怎么解决这个问题?
ρяσ*_*я K 48
试试这个:
然后,在B中,我做:
Intent intent = getIntent();
intent.putExtra("Date",dateSelected);
setResult(RESULT_OK, intent);
finish();
Run Code Online (Sandbox Code Playgroud)
并且,在A:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if(resultCode==RESULT_OK && requestCode==1){
Bundle MBuddle = data.getExtras();
String MMessage = MBuddle .getString("Date");
}
}
Run Code Online (Sandbox Code Playgroud)
在AonActivityResult方法中
if(null!=data){
Bundle bundle = data.getExtras();
String mydate = bundle.getString("Date");
}
Run Code Online (Sandbox Code Playgroud)
并在 B
Intent returnIntent = new Intent();
returnIntent.putExtra("Date",dateSelected);
setResult(RESULT_OK,returnIntent);
finish();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
38564 次 |
| 最近记录: |