我想在按下按钮时将一个活动中EditText
的值传递给另一个活动,并在我的代码中使用该值。但是,在我不想使用该值的那些活动之间还有一项活动
我的活动1有:
textOut = (EditText)findViewById(R.id.ipadd);
Button ip = (Button) findViewById(R.id.ipad);
ip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent("com.shaz.hello"));
}});
从Activity1开始,用户转到Activity2
活性2
if ( x ==10 ) {
startActivity(new Intent("com.shaz.hello2"));
}
从Activity2,用户转到Activity3
活动3
这里我想将该值用作String。
答案 0 :(得分:2)
这是另一种解决方案;
像这样创建一个Bean
类,
public class Bean {
public static String value;
public static String getValue() {
return value;
}
public static void setValue(String value) {
Bean.value = value;
}
}
在first Activity
上设置variable
中的Bean
。
Bean bean = new Bean();
bean.setValue("your value");
并在最后或variable value
Activity
Bean bean = new Bean();
String yourValue=bean.getValue();
答案 1 :(得分:1)
您可以使用putExtra()
和getExtra()
,在当前活动中添加此内容:
ip.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent mIntent = new Intent(currentActivity.this, hello.class);
mIntent.putExtra("valuename", Integer.valueOf(textOut.getText.toString));
startActivity(mIntent);
}
}
要获取上次活动的结果,请将此行放在onCreate()
之后:
int myValue = getIntent().getIntExtra("valuename", 0);
if (myValue == 10)
{
Intent mIntent = new Intent(currentActivity.this, hello2.class);
startActivity(mIntent);
}
的被修改强> 的
您需要在Android清单文件中添加您的活动,例如:
<activity android:name=".hello2"></activity>