现在,我已经用固定高度制作了它。这是我的密码。
我想根据屏幕分辨率赋予这个高度动态。
for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++)
{
tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = 130;
if (i == 0)
{
tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#ffffff"));
}
else
{
tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.WHITE);
}
}
我找到了问题的解决方案
for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++)
{
// Log.e("Selcted : ", ""+i);
tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = getHeight(getApplicationContext());
if (i == 0)
{
tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#ffffff"));
}
else
{
tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.WHITE);
}
}
从下面的方法中获取高度,您将获得Tabbar的完美高度。
public int getHeight(Context context)
{
Resources resources = context.getResources();
int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
if (resourceId > 0)
{
return resources.getDimensionPixelSize(resourceId);
}
return 0;
}