为了账号安全,请及时绑定邮箱和手机立即绑定

如何将值从一个活动传递到上一个活动

如何将值从一个活动传递到上一个活动

翻过高山走不出你 2019-08-26 14:17:16
如何将值从一个活动传递到上一个活动如何将值从一个屏幕传递到其上一个屏幕?考虑这种情况:我有两个活动。第一个屏幕有一个TextView按钮,第二个活动有一个EditText按钮。如果我单击第一个按钮,则必须移至第二个活动,此处用户必须在文本框中键入内容。如果他按下第二个屏幕上的按钮,则文本框中的值应移至第一个活动,并应显示在第一个活动中TextView。
查看完整描述

3 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

捕获在另一个Activity中执行的操作需要三个步骤。

通过使用startActivityForResult主Activity,启动辅助活动(您的“编辑文本”活动)作为子活动。

Intent i = new Intent(this,TextEntryActivity.class);    startActivityForResult(i, STATIC_INTEGER_VALUE);

在子活动中,不是在用户单击按钮时关闭活动,而是需要创建新的Intent并在其extras包中包含输入的文本值。setResult在调用finish关闭辅助Activity 之前将其传递回父调用。

Intent resultIntent = new Intent();resultIntent.putExtra(PUBLIC_STATIC_STRING_IDENTIFIER, enteredTextValue);setResult(Activity.RESULT_OK, resultIntent);finish();

最后一步是在调用Activity:Override onActivityResult来监听文本条目Activity中的回调。从返回的Intent中获取额外信息以获取您应该显示的文本值。

@Override public void onActivityResult(int requestCode, int resultCode, Intent data) {     
  super.onActivityResult(requestCode, resultCode, data); 
  switch(requestCode) { 
    case (STATIC_INTEGER_VALUE) : { 
      if (resultCode == Activity.RESULT_OK) { 
      String newText = data.getStringExtra(PUBLIC_STATIC_STRING_IDENTIFIER);
      // TODO Update your TextView.
      } 
      break; 
    } 
  } }


查看完整回答
反对 回复 2019-08-26
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

你没必要..

只需从第二个活动调用newIntenet()

Intent retData=new Intent();

添加数据以传回

putExtras (retData.putExtra("userName", getUsrName()));

继续使用setResult

setResult(RESULT_OK, retData);

然后可以完成

finish();


查看完整回答
反对 回复 2019-08-26
  • 3 回答
  • 0 关注
  • 297 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信