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)就可以了。

时间: 2024-10-20 19:32:02

Android tabhost 切换activity时数据不刷新的相关文章

Android TabHost切换选项卡实现数据实时刷新

手机界面大小有限,使用TabHost可以达到在一个Activity中放入多个容器(界面)的效果.但存在一个问题是,当数据信息在一个容器(界面)中有所改变时,需要在用户切换选项卡到其他容器(界面)的时候实时刷新数据. 如图,在”发布板报“页面发布新的板报,当用户点击“浏览板报”或者“管理板报”选项卡时要刷新数据——显示出刚刚发布的板报. 解决问题的关键在于对选项卡修改事件的监听,根据Tab ID来调用相应的方法. 核心代码: @Override public void onCreate(Bundl

Android fragment 切换加载数据卡顿问题

接着上一篇项目的进度,上一篇讲了如何利用fragment来实现下拉菜单,公用菜单,以实现切换主界面数据的功能,这时候遇到的问题是:使用了fragment的切换界面方法,但加载的数据太多,用户从一个界面切换到这个界面的时候,至少有一两秒的卡顿,这是无法忍受的,代码如下: private void initOpenMenuItem(View popupWindow_view) { <span style="white-space:pre"> </span>Drawa

切换Activity时的动画overridePendingTransition(A,B)解析

声明:转载请注明出处:http://blog.csdn.net/hello_chillax 目的: Android中不同Activity之间的切换是不可避免的事情,那么怎么才能让Acitivity的切换更优雅呢,Android中提供了一个方法来解决这个问题,即overridePendingTransition(A,B)函数. 效果: 用一张图来表示该函数能实现的效果. 效果一:新的Activity从左侧出来. 效果二:新的Activity从右侧出来. 我们先说一下overridePendingT

Android打开某个activity时自动弹出输入法键盘

最近在做一个可以让用户修改自己账户资料的activity,具体是打开后有一个EditText,然后用户可以在这里输入相关信息,但是做好后发现,进入这个activity时系统并没有自动弹出输入法键盘,于是上网搜索,发现一个很简单的方法,就是在manifest清单文件对应的activity配置中加入一句Android:windowSoftInputMode="stateVisible|adjustResize"就可以了: <!-- 修改用户资料 --> <activity

Android Adapter、Activity回传数据、发送短信

一.重写BaseAdapter的getView方法 1 @Override 2 public View getView(int position, View convertView, ViewGroup parent) { 3 View view; 4 if (convertView == null) { 5 view = View.inflate(getApplicationContext(), R.layout.item_phone, null); 6 } else { 7 view = c

Android fragment 想activity 传送数据

fragment可以通过定义 fragment的接口的方法来 想activity传送数据: 而activity则是通过实现 fragment的接口来接收fragment的送来的数据: 1.在fragment 的subclass 中定义一个接口 如 OnInterfaceOfFragmentone 接口: 在接口中定义一些方法:让activity来调用: public OnInterfaceOfFragmentone mCallback; //为Activity 定义一个接口: public in

Android两个Activity传递数据,onActivityResult获取结果时Intent为空问题

    环境:设两个Activity A 和 B,A通过调用startActivityForResult()向B传送数据,B收到数据经过处理后将数据放入Intent使用setResult(resultcode,inten)返回. 现象:在A的onActivityResult(int requestCode, int resultCode, Intent data) 中获取数据时,Intent为空,无法获取数据. 原因:在Activity B中,setResult的调用须在Activity的声明周

android 应用程序Activity之间数据传递与共享的几种途径

一.基于消息的通信机制 Intent ---boudle ,extraAndroid为了屏蔽进程的概念,利用不同的组件[Activity.Service]来表示进程之间的通信!组件间通信的核心机制是Intent,通过Intent可以开启一个Activity或Service,不论这个Activity或Service是属于当前应用还是其它应用的!                                                                 Intent包含两部分:1

Android中ListView滑动时数据混乱

相信做过Android应用开发的或多或少的都遇到过这样的问题,要不就是在ListView滑动时出现数据混乱,或者是GridView滑动时出现数据混乱.先来看看一位网友写的文章,个人感觉这篇文章挺不错的: Android ListView滑动过程中图片显示重复错位闪烁问题解决 主要分析Android ListView滚动过程中图片显示重复.错乱.闪烁的原因及解决方法,顺带提及ListView的缓存机制. 1.原因分析 ListView item缓存机制:为了使得性能更优,ListView会缓存行i