Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android StartActivityForResult-问题_Android_Android Activity - Fatal编程技术网

Android StartActivityForResult-问题

Android StartActivityForResult-问题,android,android-activity,Android,Android Activity,我有一个包含文本视图的活动“QueryInput”,它可以使用startActivityForResult调用另一个活动“QueryInputHistory” 但是,活动“QueryInput”的文本视图中的tje条目不会保存(更精确地说,它们会在调用其他活动之前被删除) 我能以某种方式防止吗?如果我理解,当用户从QueryInputHistory返回QueryInput活动时,您希望文本视图中的条目而不是editText中的条目保持不变。任何具有有效资源ID的editText的文本状态都由An

我有一个包含文本视图的活动“QueryInput”,它可以使用startActivityForResult调用另一个活动“QueryInputHistory”

但是,活动“QueryInput”的文本视图中的tje条目不会保存(更精确地说,它们会在调用其他活动之前被删除)


我能以某种方式防止吗?

如果我理解,当用户从QueryInputHistory返回QueryInput活动时,您希望文本视图中的条目而不是editText中的条目保持不变。任何具有有效资源ID的editText的文本状态都由Android操作系统在软终止时自动保持,但不能保证textView的文本状态在软终止时自动保持。因此,任何非视图实例值和textView的任何状态都需要以编程方式保存,如果符合您的要求,可能在软终止时保存在onSaveInstanceState或onRetainConfigurationState中,在硬终止时保存在OnStop或onDestroy中

解决方法可能是使用禁用的editText:

            if (cbProhibitEditPW.isChecked()) { // disable editing password
                editTextPassword.setFocusable(false);
                editTextPassword.setFocusableInTouchMode(false); // user touches widget on phone with touch screen
                editTextPassword.setClickable(false); // user navigates with wheel and selects widget
                isProhibitEditPassword= true;
            }
            else { // enable editing of password
                editTextPassword.setFocusable(true);
                editTextPassword.setFocusableInTouchMode(true);
                editTextPassword.setClickable(true);
                isProhibitEditPassword= false;
            }