Anstatt das Problem zu erklären, viel einfacher, wenn ich Ihnen zeigen:Der Standardstil schlägt für den TabPageIndicator des ViewPagerIndicator fehl. Warum und wie zu beheben?
Wie Sie die Registerkarte Titel sind alle sehen können, zusammen und ganz ungeschminkt püriert. Sie funktionieren korrekt, indem sie durch die Schalter-Registerkarten wischen (obwohl es keine sichtbaren Anzeichen gibt, außer Positionsverschiebungen, wo es angebracht ist) und tippen auf eine Registerkarte, um die Ansicht zu wechseln, aber alle Stile fehlen. Hier ist der Code:
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)
}
}
Das ist es. Nun, wenn ich nicht sehr verwirrt bin, obwohl ich die Dokumentation gelesen und die Beispiele untersucht habe, sollte ich keine zusätzlichen Schritte unternehmen müssen, um den Standard-Stil zu verwenden. Ich bin etwas verloren.
Agggh, ich hatte diese Registerkarte geöffnet, aber nie gelesen! Endlich dachte ich mir, dass ich mich selbst auskannte, aber hätte Zeit sparen können. – georgiecasey