Сбой стиля по умолчанию для TabPageIndicator ViewPagerIndicator. Почему и как исправить?

Вместо того, чтобы объяснять проблему, гораздо проще, если я просто покажу вам:

Unstyled Tab Titles

Как вы можете видеть, все заголовки вкладок смешаны вместе и совершенно не стилизованы. Они функционируют корректно, пролистывая вкладки переключателей (, хотя видимой индикации нет, за исключением смещения позиции, где это необходимо ), и касания вкладки переключает вид, но весь стиль отсутствует. Вот код:

Gallerylists.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >

  <com.viewpagerindicator.TabPageIndicator
    android:id="@+id/indicator"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

  <android.support.v4.view.ViewPager
    android:id="@+id/gallerypager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" />

</LinearLayout>

GalleryLists.java

public class GalleryLists extends Activity {
  Context context;

  private static final String[] titles = new String[] {
        "20 Hottest", "20 Worst", "20 Awesomest", "MMA", "Comedy", "Moto", "Games" };

  ViewPager listPager;
  ListPagerAdapter listPagerAdapter;

  PageIndicator indicator;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.gallerylists);

    context = this;

    listPagerAdapter = new ListPagerAdapter();

    ViewPager.OnPageChangeListener changeListener = new ViewPager.OnPageChangeListener() {

      @Override
      public void onPageScrolled(int i, float v, int i1) {}

      @Override
      public void onPageSelected(int i) {}

      @Override
      public void onPageScrollStateChanged(int i) {}
    };

    listPager = (ViewPager) findViewById(R.id.gallerypager);
    listPager.setAdapter(listPagerAdapter);
    listPager.setOnPageChangeListener(changeListener);

    indicator = (TabPageIndicator) findViewById(R.id.indicator);
    indicator.setViewPager(listPager);
    indicator.setOnPageChangeListener(changeListener);
  }

  private class ListPagerAdapter extends PagerAdapter {

    // Not important (I believe)
  }
}

Вот и все. Теперь,если я не очень запутался, несмотря на чтение документации и изучение примеров, мне не нужно предпринимать никаких дополнительных шагов, чтобы использовать стиль по умолчанию. Я немного растерялся.

16
задан Romain Guidoux 31 July 2014 в 14:36
поделиться