TabHost刷新activity的方法
在android中,使用tabHost的時(shí)候,如果tab被點(diǎn)擊,該tab所對應(yīng)的activity被加載了,從別的tab切換回來的時(shí)候,activity不會再次被創(chuàng)建了(onCreate),所以要想每次點(diǎn)擊tab都刷新activity,有如下方法:
?
方法1?把要刷新的對象添加到
?
?
@Override
public void onResume() {
super.onResume();
//代碼
}
?
每次切換tab,該activity會調(diào)用次方法
?
但是這個(gè)方法有個(gè)問題,如果在此方法中加載下個(gè)activity,在這里,我們起名叫activity2。當(dāng)activity2結(jié)束時(shí),調(diào)用finish()方法,此時(shí)tab所對應(yīng)的那個(gè)activity仍然會執(zhí)行onResume()方法,重新刷新數(shù)據(jù)。
?
如果想避免這種情況,使用方法2:
?
tabHost.addTab(tabHost.newTabSpec(0 + "").setIndicator(tv1).setContent(new Intent(this, NewsActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));
tabHost.addTab(tabHost.newTabSpec(1 + "").setIndicator(tv2).setContent(new Intent(this, VideoActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));
?
?
?使用?.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)就可以了。
原創(chuàng)帖,轉(zhuǎn)發(fā)請注明出處:http://thierry-xing.iteye.com/blog/1630687
轉(zhuǎn)載于:https://www.cnblogs.com/shellnalu/p/3731454.html
總結(jié)
以上是生活随笔為你收集整理的TabHost刷新activity的方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.%@Page%中的Codebehin
- 下一篇: 【转】shell学习笔记(一)——学习目