您的位置:首页 > 移动开发 > Android开发

Android 做fragmetn回退栈测试遇到的问题

2015-07-16 16:54 417 查看
遇到一个问题:我有3个Fragment,每个里面都有一个edittext和button。

frag1点击button通过replace自己的方式打开frag2,同时把frag1加入backstack。

frag2点击button通过hide自己,然后add的方式打开frag3.同时把frag2加入backstack。

这个时候问题出来了。两种情况:

1.我第一次的时候给frag1里面的edittext设置了id。然后跑程序,给frag1的edittext输入值,给frag2的edit输入值,然后进入frag3. 然后按back键依次返回,返回到frag2,里面的edtitext有值,这个OK。返回到frag1里面的edittext也有值。(我是用replace方式替换掉frag1的)

2.我第二次的时候给frag1里面的edittext删除了id属性。然后跑程序,给frag1的edittext输入值,给frag2的edit输入值,然后进入frag3. 然后按back键依次返回,返回到frag2,里面的edtitext有值,这个OK。返回到frag1里面的edittext 没有值了。

按理说replace的时候不应该是会把fragment的视图状态给删除,只保留fragment的实例。

但是第一种情况replace了frag1,却保留了edittext里面的值。这个是为什么呢??
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: