Вкладка исчезает после нажатия на кнопку - PullRequest
0 голосов
/ 08 июня 2011

Я создал класс TabActivity, в котором я создаю четыре вкладки для своего приложения.Теперь, когда я нажимаю кнопку, мое приложение должно перейти к следующему классу активности, который уже присутствует на моих вкладках. Что происходит, я могу перейти к следующему классу активности, но моя вкладка рассеивается.Поэтому, пожалуйста, кто-нибудь может сказать, как я могу это сделать.

private OnClickListener Btn_Listener_Continue = new OnClickListener()
{
    public void onClick(View v)
            {

    // TODO Auto-generated method stub
        Intent edit = new Intent(v.getContext(), RoomEdit.class);
            startActivityForResult(edit,0);
         TabForConfiguration.spec.setCurrentTab(1); 
    }             
};

И я объявил публичную статическую спецификацию TabHost;в моем классе TabActivity все еще происходит сбой приложения.

Это мой класс TabActivity.

 public class TabForConfiguration extends TabActivity {

 private Bundle bundle;      
 public static TabHost tabHost;      
 private TabHost.TabSpec tab1,tab2,tab3,tab4;     
 private Intent intentToTabOne,intentToTabtwo,intentToTabthree,intentToTabfour;      
 private int i=0,flagForTab,flagTest;     
 public int setTab=0,currentTabset;  

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    try{
    // request is for a window
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.tab_for_configuration);
    Resources res = getResources();// resource for drawable
    tabHost = getTabHost(); // add tabs to tab host

    bundle = TabForConfiguration.this.getIntent().getExtras();                 
    setTab = bundle.getInt("setTab");                 
    flagTest = bundle.getInt("flag");                  

    if(flagTest == 0)                 
    {                     
        intentToTabOne= new Intent(TabForConfiguration.this,OwnerConfiguration.class);                     
        intentToTabOne.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);                 
    }  

    intentToTabtwo= new Intent(TabForConfiguration.this,RoomEdit.class);                 
    intentToTabthree= new Intent(TabForConfiguration.this,UserCreate.class);                 
    intentToTabfour= new Intent(TabForConfiguration.this,UserAccessRight.class); 
    //TabHost.TabSpec spec;

//  intent = new Intent().setClass(this, OwnerConfiguration.class);
    tab1 = tabHost
            .newTabSpec("Initializer")
            .setIndicator("Home_Configure",
                    res.getDrawable(R.drawable.config_home))
            .setContent(intentToTabOne);
    tabHost.addTab(tab1);

    tab2 = tabHost
            .newTabSpec("Room Edit")
            .setIndicator("Room_Edit",res.getDrawable(R.drawable.room_edit))
            .setContent(intentToTabtwo);
    tabHost.addTab(tab2);

    tab3 = tabHost
            .newTabSpec("User Create")
            .setIndicator("User_Create",res.getDrawable(R.drawable.user_info))
            .setContent(intentToTabthree);
    tabHost.addTab(tab3);

    tab4 = tabHost.newTabSpec("Room Access")
            .setIndicator("Room_Right", res.getDrawable(R.drawable.right))
            .setContent(intentToTabfour);
    tabHost.addTab(tab4);




if(setTab == 0)                 
{                     
    currentTabset = 0;                     
    tabHost.setCurrentTab(currentTabset);                 
}                 
else if(setTab == 1)                 
{                     
    currentTabset = 1;                     
    tabHost.setCurrentTab(currentTabset);                 
}                 
else if(setTab == 2)                 
{                     
    currentTabset = 2;                     
    tabHost.setCurrentTab(currentTabset);                 
}                 
else if(setTab == 3)                 
{                     
    currentTabset = 3;                     
    tabHost.setCurrentTab(currentTabset);                 
}                 
else if(setTab == 4)                 
{                     
    currentTabset = 4;                     
    tabHost.setCurrentTab(currentTabset);                 
} 
    }

    finally
    {

    }
}   
  }

Ответы [ 3 ]

1 голос
/ 08 июня 2011

после нажатия на кнопку установите эту вкладку. Так что эта вкладка не исчезнет. Также во вкладке активность установлена ​​

 public static TabHost tabHost;` 
 Button b1 = new Button(this);
b1.setOnClickListener(new OnClicklistener()  
{
public void onClick(View v) 
                {
Tabs.tabHost.setCurrentTab(1);
}
});

Теперь ваши вкладки будут там представлены. Вкладки это моя табуляция.

0 голосов
/ 16 июня 2011
    private Bundle bundle;

    public static TabHost tabHost;

    private TabHost.TabSpec tab1,tab2,tab3,tab4;

    private Intent intentToTabOne,intentToTabtwo,intentToTabthree,intentToTabfour;

    private int i=0,flagForTab,flagTest;
    public int setTab=0;

    public void onCreate(Bundle savedInstanceState) 
    {
        try
        {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.tabs);

                tabHost = getTabHost();
                res = getResources();

                bundle = Tabs.this.getIntent().getExtras();
                setTab = bundle.getInt("setTab");
                flagTest = bundle.getInt("flag");

                if(flagTest == 0)
                {
                    intentToTabOne= new Intent(Tabs.this,BusinessType.class);
                    intentToTabOne.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
                }   


                intentToTabtwo= new Intent(Tabs.this,act1.class);
                intentToTabthree= new Intent(Tabs.this,act2.class);
                intentToTabfour= new Intent(Tabs.this,act3.class);

                tabMenuList = tabHost.newTabSpec("Menu")
                                     .setIndicator("Menu List",res.getDrawable(R.drawable.icon))
                                     .setContent(intentToTabOne);

                tabFavourite    = tabHost.newTabSpec("Favourite")
                                     .setIndicator("Favourite",res.getDrawable(R.drawable.icon))
                                     .setContent(intentToTabtwo);

                tabDeal = tabHost.newTabSpec("Deal of the Day")
                                         .setIndicator("Deal of the Day",res.getDrawable(R.drawable.tab_deal))
                                         .setContent(intentToTabthree);

                tabLockedDeals  = tabHost.newTabSpec("Locked Deals")
                                     .setIndicator("Locked Deals",res.getDrawable(R.drawable.icon))
                                     .setContent(intentToTabfour);

                tabHost.addTab(tabMenuList);
                tabHost.addTab(tabFavourite);
                tabHost.addTab(tabDeal);
                tabHost.addTab(tabLockedDeals);



                if(setTab == 0)
                {
                    currentTabset = 0;
                    tabHost.setCurrentTab(currentTabset);
                }
                else if(setTab == 1)
                {
                    currentTabset = 1;
                    tabHost.setCurrentTab(currentTabset);
                }
                else if(setTab == 2)
                {
                    currentTabset = 2;
                    tabHost.setCurrentTab(currentTabset);
                }
                else if(setTab == 3)
                {
                    currentTabset = 3;
                    tabHost.setCurrentTab(currentTabset);
                }
                else if(setTab == 4)
                {
                    currentTabset = 4;
                    tabHost.setCurrentTab(currentTabset);
                }

А от

Button b1 = new Button(this);
b1.setOnClickListener(new OnClicklistener()  
{
public void onClick(View v) 
                {
Tabs.tabHost.setCurrentTab(1);
}
});
0 голосов
/ 08 июня 2011

То, что вы ищете, это ActivityGroups. Если вы хотите, чтобы ваша следующая активность загружалась с отображением вкладок, вы должны использовать ActivityGroups. Вы не можете использовать Действия для этого.

Проверьте это

ссылка

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