Как создать действия вкладки, прежде чем нажать на панель TabWidget? - PullRequest
0 голосов
/ 09 августа 2011

Мне нужно инициализировать действия, прежде чем кто-нибудь нажмет на них.Это потому, что у меня есть видео в одной из них, и мне нужно создать эту активность для воспроизведения видео с другой вкладки (или действий).

У меня есть этот код для инициализации содержимого вкладки, но неактивности в них:

//Init Tabs
Resources res = this.getResources(); 
TabHost tabHost = getTabHost(); 

tabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);

setupTab(tabHost,MyInitActivity.class,res.getDrawable(R.drawable.ic_tab_icon),res.getString(R.string.tab_init));
setupTab(tabHost,MusicGroupActivity.class,res.getDrawable(R.drawable.ic_tab_icon),res.getString(R.string.tab_playList));
setupTab(tabHost,SearchActivity.class,res.getDrawable(R.drawable.ic_tab_icon),res.getString(R.string.tab_search));
setupTab(tabHost,VideoActivity.class,res.getDrawable(R.drawable.ic_tab_icon),res.getString(R.string.tab_video));

Я видел код, подобный этому, чтобы попробовать это:

tabHost.setCurrentTab(number);

, но, похоже, он не запускается, когда вы меняете сразу же, потому что я делаю

Context context = getTabHost (). GetChildAt (3) .getContext ();

он выдает мне нулевое исключение.

Кто-нибудь знает, как это сделать?

ДОБАВЛЕНО

private void setupTab( TabHost mTabHost,Class<? extends Activity> activityclass,Drawable image, String tag) 
{

    View tabview = createTabView(mTabHost.getContext(),image,tag);
    TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(new Intent(this, activityclass));
    mTabHost.addTab(setContent);
}

Спасибо за все

1 Ответ

0 голосов
/ 09 августа 2011

Я делаю следующее в onCreate() (скажем, у меня есть 4 вкладки)

tabHost.setCurrentTab(0); 
tabHost.setCurrentTab(1); 
tabHost.setCurrentTab(2); 
tabHost.setCurrentTab(3); 

tabHost.setCurrentTab(Tab_I_Want); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...