我需要什么,除非我的平板电脑连接到服务器,否则我无法更改选项卡。我有一个选项卡主机,它全部使用同一个 java 文件。我认为我需要做的就是在文件中进行某种测试,除非布尔值为真,否则不要让代码更改选项卡。但是我不知道该怎么做?如果您需要查看我的任何代码,请将其留在评论框中。感谢你的帮助 !
问问题
66 次
1 回答
1
好吧,我想你可以尝试通过调用来禁用/启用标签上的点击:
myTabHost.getTabWidget().setClickable(isConnectedToServer);
但我不确定这是好的用户体验,让您的用户更改标签怎么样,但如果无法访问内容,则会在标签的主视图中显示一条消息“服务器无法访问,请检查您的互联网连接”或类似的东西.
更新:试试这个(对于你的每个标签):
myTabHost.getTabWidget().getChildTabViewAt(0).setEnabled(false);
myTabHost.getTabWidget().getChildTabViewAt(1).setEnabled(false);
myTabHost.getTabWidget().getChildTabViewAt(2).setEnabled(false);
另一个更新:
public class MyActivity extends Activity {
private TabWidget mTabWidget = null;
protected void onCreate(Bundle savedInstanceState) {
...
mTabWidget = myTabHost.getTabWidget();
...
}
protected void refreshTabs(boolean isConnected) {
mTabWidget.getChildTabViewAt(0).setEnabled(isConnected);
mTabWidget.getChildTabViewAt(1).setEnabled(isConnected);
mTabWidget.getChildTabViewAt(2).setEnabled(isConnected);
}
现在,您可以随时refreshTabs
在代码中调用以启用/禁用它们。
于 2012-06-09T20:51:36.750 回答