这是一个基础问题,但我需要一些帮助。
我有两个活动:actA和actB。 当在actA中时,我想启动actB并传递一个字符串,然后我想结束actB并返回另一个字符串给actA(我不想进入actA的onCreate()方法,我更愿意将此值返回给actA中的某个方法,以便它可以使用来自actB的字符串。
需要帮助。
这是一个基础问题,但我需要一些帮助。
我有两个活动:actA和actB。 当在actA中时,我想启动actB并传递一个字符串,然后我想结束actB并返回另一个字符串给actA(我不想进入actA的onCreate()方法,我更愿意将此值返回给actA中的某个方法,以便它可以使用来自actB的字符串。
需要帮助。
From A.java:
Intent myintentB=new Intent(A.this, B.class).putExtra("<StringName>", "Value");
startActivityForResult(myintentB, 3);
from B.java:
Intent myintentA=new Intent(B.this, A.class).putExtra("<StringName>", "Value");
finish();
setResult(3, myintentA);
In A.java
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
String result_string=data.getStringExtra("<StringName>");
}
Intent intent = new Intent();
intent.setClass (getApplicationContext(), ActB.class) ;
intent.putExtra ("data1","NEW STRING") ;
context.startActivityForResult(intent) ;
在活动B的onCreate方法中:
Intent intent = getIntent() ;
if (intent.hasExtra("data1") )
String dataSent = intent.getStringExtra("data1") ;
在发送数据回来时:
Intent intent = new Intent() ;
intent.putExtra ("Return" , "RETURN STRING") ;
setResult(RESULT_OK, intent) ;
finish() ;
if (data.hasExtra("Return"))
String data1 = data.getStringExtra("Return");
intentname.putExtra("extravalue", value);
给新的 Intent 提供额外的值。然后,在新创建的 Activity 中读取该值。我知道我解释得很糟糕,但我希望您能从我制作的应用程序中的这段代码中得到这个想法。
ListLinks.java:
// Pass the value of the item URL to the linkviewer when a link is clicked
Intent openLink = new Intent(this, LinkView.class);
openLink.putExtra("url" , item.URL);
startActivity(openLink);
LinkView.java
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.linkview);
Bundle bun = getIntent().getExtras();
String url = bun.getString("url");
关于如何解决你的第二个问题,我不太确定,所以很遗憾我无法帮助你,但我相信其他人可能会。