如何使用可点击的edittexts,这些edittexts意图到某些其他布局但返回时不会丢失以前意图中的任何数据?

时间:2016-11-03 11:35:13

标签: android android-layout android-intent android-edittext

我正在尝试创建一个布局,使得有两个可点击的edittexts和onClick的那些Edittexts,布局被重定向到用户必须选择的其他布局。但我的问题是如何实现这一目标,因为我正在丢失过去的意图数据。当我先点击然后再点击第二个时,第一个意图返回的数据就会消失。如何获得此问题的解决方案?

1 个答案:

答案 0 :(得分:1)

好的,我给你简单的startActivityForResult例子,你可以试试这个:

在您的第一个活动中:

//declaring this globally would be good
private final int REQUEST_CODE_OTHER_ACTIVITY=0x1;
Intent i=new Intent(this,SecondActivity.class);
startActivityForResult(i,REQUEST_CODE_OTHER_ACTIVITY);

然后添加此方法以捕获返回的Intents:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    if (resultCode != RESULT_OK) {
        return;
    }

    switch (requestCode) {

        case REQUEST_CODE_OTHER_ACTIVITY:
            Bundle extras=data.getExtras();
            Toast.makeText(context,data.getString("salutation"),Toast.LENGTH_LONG).show();
            break;
    }
    super.onActivityResult(requestCode, resultCode, data);
}

所以在你的第二个Activity中使用这样来返回数据:

Intent returnIntent = new Intent();
String salute="Hello | привет | Hallo | Merhaba | Bonjour" ;
Bundle extras = new Bundle();
extras.putString("salutation",salute);
setResult(Activity.RESULT_OK,returnIntent.putExtras(extras));    
finish();

请参阅此链接:Using Intents to Create Flows

这也是:Result

还有另一种方法是使用Fragments进行动态布局。请尝试一些努力,编辑你的问题,而不是我可以轻松帮助你。