Вкладки ActionBar устанавливают динамическую ширину в соответствии с шириной экрана
У меня всего 5 вкладок. Вот как я их добавляю:
for (int i = 0; i < tabs.length; i++) {
if (i == 0) {
actionBar.addTab(
actionBar.newTab()
.setText(null)
.setIcon(R.drawable.activity)
.setTabListener(this));
} else if (i == 1) {
actionBar.addTab(
actionBar.newTab()
.setText(null)
.setIcon(R.drawable.group)
.setTabListener(this));
} else if (i == 2) {
actionBar.addTab(
actionBar.newTab()
.setText(null)
.setIcon(R.drawable.message)
.setTabListener(this));
} else if(i == 3){
actionBar.addTab(
actionBar.newTab()
.setText(null)
.setIcon(R.drawable.notification)
.setTabListener(this));
}
else
{
actionBar.addTab(
actionBar.newTab()
.setText(null)
.setIcon(R.drawable.hamburger)
.setTabListener(this));
}
Я старалсяэтот Решение, но это устанавливает ширину значка вкладки, а не самой вкладки.
Ниже приведены стили, которые я применил:
Тема приложения :
<style name="CustomActionBarTheme" parent="Theme.AppCompat.Light">
<item name="android:windowActionBarOverlay">true</item>
<item name="android:actionBarTabStyle">@style/actionBarTabBarStyle</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="actionBarTabBarStyle" parent="@style/Widget.AppCompat.ActionBar.TabView">
<item name="android:paddingLeft">1dp</item>
<item name="android:paddingRight">1dp</item>
<item name="android:minWidth">10dp</item>
<item name="android:maxWidth">15dp</item>
<item name="android:showDividers">none</item>
</style>
Я также пытался использоватьcustomView для вкладки, но это не сработало.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tabItemLayout"
android:gravity="center"
android:layout_width="wrap_content" android:layout_height="match_parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:id="@+id/imageViewTab" />
</LinearLayout>
Вкладки слишком широкие иtabBar
скользит Как я могу заставить вкладки принимать динамическую ширину в соответствии с шириной экрана без эффекта скольжения. все вкладки должны соответствовать ширине экрана и иметь одинаковую ширину.
Здесь есть 4 вкладки.TabBar можно прокручивать, поэтому при прокрутке появляется пятая вкладка, которая мне не нужна.