为底部 Tabbar 提供动态高度?

Give dynamic height to bottom Tabbar?

现在,我已经做到了固定高度。这是我的代码。

我想根据屏幕分辨率将此高度设为动态。

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;
}