请教Tabhost建立切换卡,想实现在点击某一个Tab时不让它切换怎么实现
请问Tabhost建立切换卡,想实现在点击某一个Tab时不让它切换如何实现?
请问Tabhost建立切换卡,想实现在点击某一个Tab时不让它切换如何实现?
我做了一个Tab切换卡的应用,Tab卡包括A,B,C,more,我想点击A,B,C时都切换到各自的Activity,唯独more选项卡点击时不切换任何Tab,只是弹出一个菜单用来选择,我试过用OnTabChangeListener监听Tab的切换,但发现都是切换完毕后程序才走到这里,所以请教一下如何在切换前捕获到事件?
还有我如何在具有TabHost的Activity中去改变和操作子Tab的Activity中的控件状态及其变量?这个真的不知道怎么实现。
------解决方案--------------------
当切换到那个选项卡时:
在事件中判断:
@Override
public void onTabChanged(String tabId) {
if("your special tag".equals(tabId)){
TabHost tabs = getTabHost();
tabs.setCurrentTabByTag(preTab);
}else{
preTab = tag;
}
}
几句代码搞定
------解决方案--------------------
请问Tabhost建立切换卡,想实现在点击某一个Tab时不让它切换如何实现?
我做了一个Tab切换卡的应用,Tab卡包括A,B,C,more,我想点击A,B,C时都切换到各自的Activity,唯独more选项卡点击时不切换任何Tab,只是弹出一个菜单用来选择,我试过用OnTabChangeListener监听Tab的切换,但发现都是切换完毕后程序才走到这里,所以请教一下如何在切换前捕获到事件?
还有我如何在具有TabHost的Activity中去改变和操作子Tab的Activity中的控件状态及其变量?这个真的不知道怎么实现。
------解决方案--------------------
当切换到那个选项卡时:
在事件中判断:
@Override
public void onTabChanged(String tabId) {
if("your special tag".equals(tabId)){
TabHost tabs = getTabHost();
tabs.setCurrentTabByTag(preTab);
}else{
preTab = tag;
}
}
几句代码搞定
------解决方案--------------------
- Java code
@Override public void onTabChanged(String tabId) { if(tags.length>2 && tags[3].equals(tabId)){ ((BaseAdapter)listView.getAdapter()).notifyDataSetChanged(); } if ("your special tag".equals(tabId)) { TabHost tabs = getTabHost(); tabs.setCurrentTabByTag(preTab); } else { preTab = tabId; } }
------解决方案--------------------
- Java code
@Override public void onTabChanged(String tabId) { if ("your special tag".equals(tabId)) { TabHost tabs = getTabHost(); tabs.setCurrentTabByTag(preTab); } else { preTab = tabId; } }