【发布时间】:2014-06-16 11:52:07
【问题描述】:
我在清除 TabHost(以编程方式)时遇到问题。我用这个:
tabs.setCurrentTab(0);
tabs.clearAllTabs();
但我收到一个空指针异常,因为第一次进入活动时,选项卡尚未填充。
我能做些什么来解决这个问题?有什么方法可以检查tabhost是否有数据?
【问题讨论】:
我在清除 TabHost(以编程方式)时遇到问题。我用这个:
tabs.setCurrentTab(0);
tabs.clearAllTabs();
但我收到一个空指针异常,因为第一次进入活动时,选项卡尚未填充。
我能做些什么来解决这个问题?有什么方法可以检查tabhost是否有数据?
【问题讨论】:
试试这个:
if(tabs.getTabWidget().getTabCount() > 0){
// has data
}
【讨论】:
通过它,您可以查看活动是否第一次调用的天气。试试这个!
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
boolean previouslyStarted = prefs.getBoolean(getString(R.string.pref_previously_started), false);
if(!previouslyStarted){
SharedPreferences.Editor edit = prefs.edit();
edit.putBoolean(getString(R.string.pref_previously_started), Boolean.TRUE);
edit.commit();
//Activity calls for very first time
}
else
{
//Activity already started
}
【讨论】: