2014-03-07 109 views
0

我做了一个自定义的TabHost,我只想要在每个选项卡上没有文字的图像。我怎样才能调整我的图片选项卡的中心?请帮忙吗?谢谢。这是MI java代码: JAVAAndroid:在TabHost中对齐中心图像

private void cargarTabHost() { 

     tabs=(TabHost)findViewById(android.R.id.tabhost); 
    tabs.setup(); 

    TabHost.TabSpec spec = tabs.newTabSpec("mitab1"); 
    spec.setContent(R.id.tab1); 
    spec.setIndicator("", getResources().getDrawable(R.drawable.borrar)); 
    tabs.addTab(spec); 

    spec = tabs.newTabSpec("mitab2"); 
    spec.setContent(R.id.tab2); 
    spec.setIndicator("PLANO"); 
    tabs.addTab(spec); 

    tabs.setCurrentTab(0); 

    RelativeLayout.LayoutParams rllp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); 
    rllp.addRule(RelativeLayout.CENTER_IN_PARENT); 

    for (int i = 0; i < tabs.getTabWidget().getTabCount(); i++) { 
     tabs.getTabWidget().getChildAt(i).getLayoutParams().height = 75; 
     tabs.getTabWidget().getChildAt(i).findViewById(android.R.id.title). 
     setLayoutParams(rllp); 
    } 

    TabWidget tw = (TabWidget)tabs.findViewById(android.R.id.tabs); 

      View tabView = tw.getChildTabViewAt(0); 
    tabView.setBackgroundResource(Modulo.cargarColorPestanas(perfilObj.getColor())); 

    View tabView2 = tw.getChildTabViewAt(1); 
    tabView2.setBackgroundResource(Modulo.cargarColorPestanas(perfilObj.getColor())); 

    tabs.setOnTabChangedListener(new OnTabChangeListener() { 
     @Override 
     public void onTabChanged(String tabId) { 

      ... 
     } 
    }); 
} 

回答

0

尝试这样做,我还没有尝试过,但希望它的工作原理。

... 
for (int i = 0; i < tabs.getTabWidget().getTabCount(); i++) { 
     tabs.getTabWidget().getChildAt(i).getLayoutParams().height = 75; 
     tabs.getTabWidget().getChildAt(i).findViewById(android.R.id.title) 
     .setVisibility(View.GONE); 
    } 
... 
+0

它不适合我 – Charlie