为了账号安全,请及时绑定邮箱和手机立即绑定

settext()问题

老师,大神们,连续2次点击按钮传入数据,为什么只有第一次settext起到了作用,将值变为输入的值,改变第二次输入的值再点击,textview显示的还是第一次的值,没有更新。。。请问这是什么情况,以及解决方案

正在回答

4 回答

FragmentTransaction.add 

FragmentTransaction.addToBackStack(null)

将一个fragment加入进来之前的并不会销毁,所以按back还会退还到之前的fragment中,数据也存在。

如果用FragmentTransaction.replace  

FragmentTransaction.addToBackStack(null)

replace包含了remove 和add 是先将之前的fragment  remove掉在add进来一个新的fragment实例,所以被remove的fragment数据将不存在。


0 回复 有任何疑惑可以回复我~

把beginTransaction.add换成beginTransaction.replace

2 回复 有任何疑惑可以回复我~
#1

嗟嗟嗟

试了下,确实可以,但是原理是什么呢。。
2016-05-11 回复 有任何疑惑可以回复我~
#2

慕名1743 回复 嗟嗟嗟

简单来说 就是replace将会先删除之前的实例 再添加一个新的实例 相当于刷新数据
2016-05-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第1季)
  • 参与学习       111172    人
  • 解答问题       1457    个

本课程由浅入深地带您学会Android的常用控件的开发和使用

进入课程

settext()问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信