从活动B到活动A的额外内容 [英] Extra from Activity B to Activity A
本文介绍了从活动B到活动A的额外内容的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两个活动.在活动A中,我有 Textview
.单击此按钮后,我使用 EditText
进入活动B.
I have two activities. In Activity A I have Textview
. After click this I go to Activity B with EditText
.
如何将值从活动B中的 EditText
传递回活动A中的 TextView
,从而使活动A保持原始状态?
How can I pass the value from the EditText
in activity B back to the TextView
in activity A, keeping activity A's original state in the process?
推荐答案
写活动A像这样
public class MainActivity extends Activity {
TextView textView1;
Button button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView1=(TextView)findViewById(R.id.textView1);
button1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent, 2);// Activity is started with requestCode 2
}
});
}
// Call Back method to get the Message form other Activity
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
// check if the request code is same as what is passed here it is 2
if(requestCode==2)
{
String message=data.getStringExtra("MESSAGE");
textView1.setText(message);
}
}
}
使用startActivity插入 startActivityForResult
Insted of startActivity use startActivityForResult
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent, 2);// Activity is started with requestCode 2
在活动B中设置这样的结果
and in Activity B set result like this
Intent intent=new Intent();
intent.putExtra("MESSAGE",message);
setResult(2,intent);
finish();//finishing activity
您可以在活动A( onActivityResult
)
这篇关于从活动B到活动A的额外内容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文