Rumah > Soal Jawab > teks badan
遇到问题:将4个Fragment中的数据保存到一个Bundle中,在第一个页面从不可见进入可见状态时,从Bundle中成功获取到数据并执行settext,问题来了。从第二个页面返回页面一时 一切正常,但是从页面三、四再返回页面一,数据获取到了、settext语句也正常执行,但是没有任何显示。
/**
* 重新进入本页面重新加载数据以供修改
*
* @param isVisibleToUser
*/
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser && intoFlag > 1) {
Bundle bundle = getAddInfo();
infotype_frag_baseinfo.setRightTvv(bundle.getString(Constant.TYPEID));// 信息类型
DebugLogUtil.getInstance().Debug(getSimpleClassName() + "可见");
} else {
DebugLogUtil.getInstance().Debug(getSimpleClassName() + "不可见");
intoFlag++;
}
}
PHP中文网2017-04-17 18:00:45
Sebenarnya, ini bergantung pada Adapter
mana yang anda gunakan
FragmentPagerAdapter akan sentiasa menyimpan Fragment
dalam memori Adalah disyorkan untuk menggunakan Fragmnet
FragmentStatePagerAdapter hanya menyimpan Fragment
Bilangan pramuat untuk Fragment
boleh ditetapkan melalui setOffscreenPageLimit(int count)
高洛峰2017-04-17 18:00:45
Pass in Viewpager.setOffscreenPageLimit(int count); untuk menghantar bilangan Fragmen yang perlu cache paparan untuk mencapai keperluan untuk cache semua data Fragment. Kod ilustrasi tidak lagi digunakan.