Android tabhost 切换activity时数据不刷新

解决方案 在android中,使用tabHost的时候,若是tab被点击,该tab所对应的activity被加载了,从别的tab切换回来的时候,activity不会再次被建立了(onCreate),因此要想每次点击tab都刷新activity,有以下方法: 方法1 把要刷新的对象添加到onresume 1 @Override 2 public void onResume() { 3 super.onResume(); 4 //代码 5 } 每次切换tab,该activity会调用次方法onresume 方法 可是这个方法有个问题,若是在此方法中加载下个activity,在这里,咱们起名叫activity2。当activity2结束时,调用finish()方法,此时tab所对应的那个activity仍然会执行onResume()方法,从新刷新数据。 若是想避免这种状况,使用方法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)就能够了。android

相关文章
相关标签/搜索