我正在尝试找到一种方法,当该选项卡是当前选项卡时,能够在该选项卡上触发 onclick 事件。
我确实尝试过这种方式(以及其他几种方式),但没有成功。
public void onTabChanged(String tabId) {
Log.d(this.getClass().getName(), ">>>>>>>>>>>>>>>>>>>>>>>> tabId: " + tabId);
int tabs = getTabWidget().getChildCount();
Log.d(this.getClass().getName(), "tabs: " + tabs);
for(int i=0; i<tabs; i++){
View tab = getTabWidget().getChildAt(i);
if(i==tabHost.getCurrentTab()){
Log.d(this.getClass().getName(), "tab: " + i);
tab.setOnClickListener(this);
}else{
tab.setOnClickListener(null);
tab.getOnFocusChangeListener();
}
}
}
重点是我设置了onClickListener
to null
所以,下次我单击选项卡时什么也没有发生,但我希望normal选项卡行为。
外面有什么想法吗?
在经历了选项卡侦听器的许多解决方案之后,我找到了非常简单的解决方案......
getTabHost().setOnTabChangedListener(new OnTabChangeListener() {
@Override
public void onTabChanged(String tabId) {
int i = getTabHost().getCurrentTab();
Log.i("@@@@@@@@ ANN CLICK TAB NUMBER", "------" + i);
if (i == 0) {
Log.i("@@@@@@@@@@ Inside onClick tab 0", "onClick tab");
}
else if (i ==1) {
Log.i("@@@@@@@@@@ Inside onClick tab 1", "onClick tab");
}
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)