Android 如何使用可点击的编辑文本,该文本用于其他布局,但返回时不会丢失先前意图中的任何数据?
我试图创建一个布局,这样有两个可点击的EditText,一旦点击这些EditText,布局将重定向到其他布局,用户必须在其中选择一些内容。但我的问题是如何实现这一点,因为我正在丢失过去的意图数据。当我先单击然后再单击第二个时,第一个意图返回的数据将消失。如何获得此问题的解决方案?好的,我给您举一个简单的Android 如何使用可点击的编辑文本,该文本用于其他布局,但返回时不会丢失先前意图中的任何数据?,android,android-layout,android-intent,android-edittext,Android,Android Layout,Android Intent,Android Edittext,我试图创建一个布局,这样有两个可点击的EditText,一旦点击这些EditText,布局将重定向到其他布局,用户必须在其中选择一些内容。但我的问题是如何实现这一点,因为我正在丢失过去的意图数据。当我先单击然后再单击第二个时,第一个意图返回的数据将消失。如何获得此问题的解决方案?好的,我给您举一个简单的startActivityForResult示例,您可以尝试以下方法: 在您的第一个活动中: //declaring this globally would be good private fin
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);
然后添加此方法以捕获返回的意图:
@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);
}
因此,在您的第二个活动中,使用类似的方法返回数据:
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();
请参考此链接:
这也是:
还有一种方法是使用片段进行动态布局。请尝试一些努力,编辑您的问题,使我能够轻松地帮助您。您是否尝试使用
startActivityForResult
或Fragment
进行动态布局?@YasinKaçmaz不,我没有,明白了!我会尝试用这个来执行,并通知你它是否工作正常。谢谢你,伙计!你救了我一天,谢谢。事实上,你也可以拯救你的一天。你需要做的就是有效地使用谷歌叔叔。因为关于这个话题有很多线索。无论如何,我的建议只是一个建议,祝你有一个美好的一天。