2011-09-23 77 views
17

我是开发android应用程序。我已经完成了更多,但我想尽量减少选项。我已经使用标签栏。在这个我想要最小化选项卡。当用户单击最小化选项卡以最小化整个应用 我的TabBar代码..如何在android中最小化整个应用程序?

public class tabbar extends TabActivity implements OnTabChangeListener { 
    private Context mContext; 
    TabHost tabHost; 
    int tabload=0; 
    private AlertDialog alertDialog; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.tabbar); 
     //mContext=this; 

     /** TabHost will have Tabs */ 
     tabHost = (TabHost)findViewById(android.R.id.tabhost); 
     tabHost.setOnTabChangedListener(this); 



     /** TabSpec used to create a new tab. 
     * By using TabSpec only we can able to setContent to the tab. 
     * By using TabSpec setIndicator() we can set name to tab. */ 

     /** tid1 is firstTabSpec Id. Its used to access outside. */ 
     TabSpec firstTabSpec = tabHost.newTabSpec("tab_id1"); 
     TabSpec secondTabSpec = tabHost.newTabSpec("tab_id2"); 
     TabSpec thirdTabSpec = tabHost.newTabSpec("tab_id3"); 


     /** TabSpec setIndicator() is used to set name for the tab. */ 
     /** TabSpec setContent() is used to set content for a particular tab. */ 
     firstTabSpec.setIndicator("FRIENDS").setContent(new Intent(this,view_friends.class)); 
     secondTabSpec.setIndicator("GROUPS").setContent(new Intent(this,groups.class)); 
     thirdTabSpec.setIndicator("SIGN OUT").setContent(new Intent(this,signout.class)); 


     /** Add tabSpec to the TabHost to display. */ 
     tabHost.addTab(firstTabSpec); 
     tabHost.addTab(secondTabSpec); 
     tabHost.addTab(thirdTabSpec); 



    } 



     @Override 
     public void onTabChanged(String tabId) { 
     // TODO Auto-generated method stub 

     for(int i=0;i<tabHost.getTabWidget().getChildCount();i++) 
      { 
        tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#343333")); //unselected 
      } 
         tabHost.getTabWidget().getChildAt(tabHost.getCurrentTab()).setBackgroundColor(Color.parseColor("#f1a026"));  // selected 
    //   if(tabId.equals("tab_id1")){ 
    //    LocalActivityManager manager = getLocalActivityManager(); 
    //    manager.destroyActivity("tab_id1", true); 
    //    manager.startActivity("tab_id1", new Intent(this, view_friends.class)); 
    //   } 

    } 
    @Override 
    protected void onDestroy() { 
     super.onDestroy(); 
     tabHost.setCurrentTab(2); 
     System.gc(); 
    } 


} 

在此代码,如果任何修正需要请帮助...

给我一个示例代码..

+0

界定“最小化”的主页按钮是绰绰有余了。你在找[[Activity.finish()'](http://developer.android.com/reference/android/app/Activity.html#finish())? –

+0

你想要什么?你需要与“主页”按钮相同的行为吗?这不是很清楚。 – Nanne

+0

是的,我想要我的标签中的主页按钮行为点击 – Selva

回答

45

我不知道你是什么意思最小化。如果你想隐藏你的应用并向用户显示主屏幕,你可以使用下面的意图。

Intent startMain = new Intent(Intent.ACTION_MAIN); 
startMain.addCategory(Intent.CATEGORY_HOME); 
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(startMain); 

虽然如果用户想要隐藏您的应用程序

+0

这正是我正在寻找的。 – Derzu

+1

如何从其他应用程序最小化? – codezjx

相关问题