我在Android中使用此TabLayout并希望使标签比默认标签(48dp)更高
<android.support.design.widget.TabLayout
android:id="@+id/contentTabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/Theme.Zhaw.TabLayout"
app:tabMode="fixed"
app:tabGravity="fill"/>
这是Style Theme.Zhaw.TabLayout:
<style name="Theme.Zhaw.TabLayout" parent="Widget.Design.TabLayout">
<item name="tabIndicatorColor">@color/text_white</item>
<item name="tabIndicatorHeight">4dp</item>
<item name="tabPaddingStart">6dp</item>
<item name="tabPaddingEnd">6dp</item>
<item name="tabBackground">@color/colorPrimary</item>
<item name="tabTextAppearance">@style/Theme.Zhaw.TabLayoutText</item>
<item name="tabSelectedTextColor">@color/text_white</item>
</style>
tabIndicatorHeight可以设置选项卡中小指示符(活动选项卡)的高度。但是我们如何设置标签本身的高度呢?
答案 0 :(得分:5)
在dps中设置layout_height而不是wrap_content,这可能因不同的显示尺寸而有所不同,但如果你想动态设置高度
getApplication.getResources().getDisplayMetrics()
获取当前身高并根据
计算身高答案 1 :(得分:5)
只需将layout_height从wrap_content更改为您想要的
<android.support.design.widget.TabLayout
android:id="@+id/contentTabs"
android:layout_width="match_parent"
android:layout_height="Your Value"
style="@style/Theme.Zhaw.TabLayout"
app:tabMode="fixed"
app:tabGravity="fill"/>
答案 2 :(得分:1)
我使用以下代码设置TabLayout的高度。希望它对您有帮助:
//Get tablayout
TabLayout tabLayout = (TabLayout) findViewById(R.id.tab_layout);
//Get the layout params that will allow you to resize the tablayout
ViewGroup.LayoutParams params = tabLayout.getLayoutParams();
//Change the height in 'Pixels'
params.height = 100;
tabLayout.setLayoutParams(params);