我有MainActivity
,FirstActivity
,SecondActivity
。
在MainActivity
中,我有2个 Edittext 名称:Edittext1
和Edittext2
。另外,我有1个按钮,它将同时提交结果到FirstActivity
和SecondActivity
。
在FirstActivity
中,将有1个 textview ,它将从Edittext1
获取MainActivity
的结果。当单击将导航到SecondActivity
时,它还有1个 button 意图。
问题:如何从Edittext2
获取MainActivity
的数据?
答案 0 :(得分:0)
您应该使用intent.putExtras()将Maintext中的edittext1和edittext2数据都传递给Firstactivity,然后在单击按钮时从firstactivity中将您从Mainactivity收到的edititext2数据传递给SecondActivity
答案 1 :(得分:0)
MainActivity.java中的代码
mainActivityButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, FirstActivity.class);
intent.putExtra("Editext1", editText1.getText().toString());
intent.putExtra("Editext2", editText2.getText().toString());
startActivity(intent);
}
});
First Activity.java中的代码
firstActivityButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.putExtra("Editext2Data", getIntent().getStringExtra("Edittext2"););
startActivity(intent);
}
});
更新:
要直接访问主要活动数据。您可以使用static
变量来存储edittext数据,并在任何地方获取该数据(不是一种好方法)
在主要活动中将其全局初始化
public static String editext2_data = "";
点击按钮保存其中的数据
mainActivityButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
editext2_data = editText2.getText().toString();
//Intent intent = new Intent(MainActivity.this, FirstActivity.class);
//intent.putExtra("Editext1", editText1.getText().toString());
//intent.putExtra("Editext2", editText2.getText().toString());
//startActivity(intent);
}
});
从SecondActivity访问MainActivity的静态变量为
String data = MainActivity.editext2_data;
答案 2 :(得分:0)
在MainActivity中
submitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, FirstActivity.class);
intent.putExtra("Editext2", editText2.getText().toString());
startActivity(intent);
}
});
在FirstActivity中:
String data= getIntent().getStringExtra("Editext2");
submitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("Editext2Data",data);
startActivity(intent);
}
});
在SecondActvity中:
String data= getIntent().getStringExtra("Editext2Data");
答案 3 :(得分:-2)
您应该使用Bundles将数据从一个活动传递到另一个活动..
只需了解android中的捆绑包... !!