我在现有解决的帖子上提前发帖,主持人建议我创建一个新帖子。
n双窗格应用程序,我有一个MainActivity控制设备上的一些数据,如果需要请求登录,然后启动主流详细活动(TopicListActivity)。
主流具有经典外观,我用FragmentManager.replace()替换内容容器。它可以是子列表,也可以是子列表中的项目。非常基本的。
在项目片段上,我有一个启动意图的按钮:RecognizerIntent.ACTION_RECOGNIZE_SPEECH
我基本上开始了:startActivityForResult(intentWithMyExtraParams,REQ_CODE_SPEECH_INPUT);
此片段(项目页面)处理onActivityResult回调。触发后,获取识别的文本以在TextView中设置它然后正确完成此回调,重新加载项目片段,并且onCreateView提供的Bundle为null。
我尝试了一个新的主流项目来检查问题是否发生。没有发生。在onActivityResult之后,片段没有重新加载,我的TextView.setText()不会因片段重新加载而丢失。
我尝试将ItemPageFragment作为变量放在ItemTopicListActivity中,在新项目询问时处理它,在ItemFragment回调中添加按钮单击(以启动识别器),以便他的父项ItemTopicListActivity处理此活动,然后通过使用发送信息处理变量的片段方法,但我得到了相同的结果,片段被重新加载。
我试图在清单中添加一些额外的配置,例如:在ItemTopicListActivity上的android:alwaysRetainTaskState在app元素上的allowBackup = true noHistory = false
我不知道......
感谢所有