[英]actionbar tab indicator is NOT applying custom styles
我有一個帶有動作欄標簽的viewpager這個問題,基本上我無法將任何自定義樣式應用於標簽,這就是我所擁有的
好的,所以這是使用android studio 1.1隨附的默認選項卡式活動的,這里是我擁有的特征列表
主要活動
public class MainActivity extends ActionBarActivity implements ActionBar.TabListener {
SectionsPagerAdapter mSectionsPagerAdapter;
ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mSectionsPagerAdapter);
mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
}
});
for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
actionBar.addTab(
actionBar.newTab()
activity_main.xml
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:id="@+id/pager"
android:layout_width="match_parent" android:layout_height="match_parent"
tools:context=".MainActivity" />
我在styles.xml中有我的自定義樣式,並且已將它們應用到清單中
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.CustomTheme" >
這是我知道要更改為紅色指示器的樣式的一小部分
<style name="ActionBarTabStyle.Aeroman" parent="@style/Widget.AppCompat.ActionBar.TabView">
<item name="android:background">@drawable/tab_indicator_ab_customTheme</item>
</style>
使用紅色指示器顏色
所有這些對我來說看起來都很不錯,但是正如您在屏幕快照中看到的那樣,突出顯示忽略了這些樣式,我知道樣式文件中的某些樣式已應用,因為例如,我有一個Theme.AppCompat.Light.DarkActionBar作為父項,如果我將其更改為Theme.AppCompat.Light,則ActionBar會變為灰色,因此該部分是否正常工作,對我來說很奇怪的是,選項卡指示器為綠色,我認為應該為藍色,對嗎? 並且默認情況下非常薄。
我在使用Nexus 4和API 16的genymotion模擬器中以及在使用Nexus 5和android 5.0.1的真實設備中進行了測試
請幫助理解這一點,我在這里拉頭發,謝謝您的幫助
使用不帶android:
前綴的appcompat屬性名稱,即:
<item name="actionBarTabStyle">@style/ActionBarTabStyle.YourProject</item>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.