Вызов разных вкладок из нормальной активности в андроид - PullRequest
1 голос
/ 17 февраля 2012

в моем приложении после SplashScreen я вызываю Tabactivity.

В этой вкладке с первой вкладки я переключаюсь на другое действие, называемое Float, которое не связано с TabActivity.Из этого действия, когда условие становится True, я хочу показать третью вкладку в TabBar.Как открыть третью вкладку из действия вкладки.

Ниже приведен код моего класса Tabactivity

public class MainTabBar extends TabActivity 
{
    TabHost tabHost;
    Intent intent;

    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.maintab);


          addTab1(Display.class);
          addTab2(History.class); 
          addTab3(Capture    .class);
          addTab4(AboutUs.class);
    }

    private void addTab1( Class<?> c)
    {
        TabHost tabHost = getTabHost();
        Intent intent = new Intent(this, c);
        TabHost.TabSpec spec = tabHost.newTabSpec("Tab1");  

        View tabIndicator = LayoutInflater.from(this).inflate(R.layout.hometab, getTabWidget(), false);
        spec.setIndicator(tabIndicator);
        spec.setContent(intent);
        tabHost.addTab(spec);
    }

    private void addTab2( Class<?> c)
    {
        TabHost tabHost = getTabHost();
        Intent intent = new Intent(this, c);
        TabHost.TabSpec spec = tabHost.newTabSpec("Tab2");  

        View tabIndicator = LayoutInflater.from(this).inflate(R.layout.macstab, getTabWidget(), false);
        spec.setIndicator(tabIndicator);
        spec.setContent(intent);
        tabHost.addTab(spec);
    }

    private void addTab3( Class<?> c)
    {
        TabHost tabHost = getTabHost();
        Intent intent = new Intent(this, c);
        TabHost.TabSpec spec = tabHost.newTabSpec("Tab3");  

        View tabIndicator = LayoutInflater.from(this).inflate(R.layout.abouttab, getTabWidget(), false);        
        spec.setIndicator(tabIndicator);
        spec.setContent(intent);
        tabHost.addTab(spec);
    }

    private void addTab4( Class<?> c)
    {
        TabHost tabHost = getTabHost();
        Intent intent = new Intent(this, c);
        TabHost.TabSpec spec = tabHost.newTabSpec("Tab4");  

        View tabIndicator = LayoutInflater.from(this).inflate(R.layout.contacttab, getTabWidget(), false);      
        spec.setIndicator(tabIndicator);
        spec.setContent(intent);
        tabHost.addTab(spec);
    }
}

. Вышеуказанное с использованием флага или любым другим простым способом, пожалуйста,предложите мне друзья, я очень плохо знаком с Android

1 Ответ

1 голос
/ 17 февраля 2012

Вы можете использовать индекс вкладки, чтобы показать третью вкладку

tabHost.setCurrentTab(2);
...