2011-09-05 50 views
1

我想設計一個頁面,我只想顯示一個選項卡。但是,當我只添加一個選項卡,它需要全部可用的寬度,但我希望該選項卡只佔用較小的空間,剩餘空間留空。沒有其他標籤我想添加。一次只顯示一個選項卡。代碼如下android中的自定義tabview

public class TabViewActivity extends TabActivity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     TabHost tabHost = getTabHost(); // The activity TabHost 
     TabHost.TabSpec spec; // Resusable TabSpec for each tab 
     Intent intent; // Reusable Intent for each tab 

     // Create an Intent to launch an Activity for the tab (to be reused) 
     intent = new Intent().setClass(this, FirstTab.class); 
     // Initialize a TabSpec for each tab and add it to the TabHost 

     spec = tabHost.newTabSpec("firstTab").setIndicator("First Tab") 
         .setContent(intent); 


     tabHost.addTab(spec); 
     tabHost.setCurrentTab(1); 

回答

0

在XML隱藏通過設置知名度水漲船高的標籤控件。而是使用一個按鈕。而在按鈕處理程序,你可以使用如下代碼

public void tabHandler(View target){ 
    artistButton.setSelected(false); 
    albumButton.setSelected(false); 
    if(target.getId() == R.id.artist_id){ 
     tabHost.setCurrentTab(0); 
     artistButton.setSelected(true); 
    } else if(target.getId() == R.id.album_id){ 
     tabHost.setCurrentTab(1); 
     albumButton.setSelected(true); 
    } 
} 
1

使用tabHost.getTabWidget().getChildAt(0).getLayoutParams().width =(int) 30;還設置了layout_width="wrap_content"

+0

感謝我嘗試這樣做,這是工作 – Vikas