我正在使用ActionBar
,我想在导航标签中设置自定义View
。
标签的高度似乎是固定的,我的自定义View
较大,因此不适合。
我尝试自定义样式,如下所示,但它不会使标签更高......
如何让标签的高度适应我的自定义View
尺寸?
(我知道我可以在我的情况下使用Tab
的{{1}}和setIcon
,但我仍然想使用自定义setTitle
)
styles.xml
View
custom_tab.xml
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo">
</style>
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:actionBarTabStyle">@style/MyTabStyle</item>
</style>
<style name="MyTabStyle" parent="@android:Widget.ActionBar.TabView">
<item name="android:height">85dp</item>
</style>
</resources>
MainActivity.java
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center_horizontal" >
<ImageView
android:id="@+id/icon"
android:layout_width="60dp"
android:layout_height="60dp"
android:scaleType="centerInside" />
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:maxLines="1" />
</LinearLayout>
答案 0 :(得分:0)
这使动作栏保持在最顶层,但我不知道为什么!
ActionBar.DISPLAY_SHOW_HOME
操作栏保持在顶部:
actionbar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME);
标签位于操作栏的顶部:
actionbar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM
答案 1 :(得分:0)
AFAIK,您无法更改操作栏标签的高度。但是,您可以通过使用TabHost和ViewPager来实现预期的行为。 这样,您可以向TabIndicators添加自定义视图,还可以使用滑动功能。