2012-04-01 10 views
0

Ich kann die Seite nicht mit circlepageindicator laden. Dies ist der xmlAndroid CirclePageIndicator funktioniert nicht

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
<ImageView android:src="@drawable/bg2" android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 
<LinearLayout android:layout_width="220dp" 
    android:orientation="vertical" android:layout_gravity="center_horizontal" 
    android:layout_height="32dp" android:layout_marginTop="32dp"> 
    <android.support.v4.view.ViewPager 
     android:layout_width="match_parent" android:layout_height="match_parent" 
     android:id="@+id/myfivepanelpager" /> 

    <com.viewpagerindicator.CirclePageIndicator 
    android:id="@+id/indicator" 
    android:padding="10dip" 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
    /> 

</LinearLayout> 

Java-Datei

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    MyPagerAdapter adapter=new MyPagerAdapter(); 
    ViewPager myPager=(ViewPager)findViewById(R.id.myfivepanelpager); 
    myPager.setAdapter(adapter); 
    myPager.setCurrentItem(2); 

    CirclePageIndicator titleIndicator = (CirclePageIndicator)findViewById(R.id.indicator); 
    titleIndicator.setViewPager(myPager); 
} 

jake Wharton Projekt zur Bibliothek hinzugefügt wurde. Es gibt keinen Fehler beim Erstellen, aber nicht das Laden der Seite. Was ist los mit dir?

Antwort

8

Ihr ViewPager ist auf eingestellt, wodurch verhindert wird, dass eine andere Ansicht im Container angezeigt wird. Stellen Sie die ViewPager Höhe auf 0dp mit android:layout_weight="1".

Der Container ist auch fest codiert 32dp, die extrem klein ist und wahrscheinlich nicht sowohl den Pager und Indikator bequem halten wird.

+0

sein nicht, dass der circlepageindicator fehlt, die Seite selbst nicht geladen ist. Wiederum hörte es unerwartet auf. – JaseemAmeer

+0

Ich habe Ihr Bibliotheksprojekt in Java Build Path hinzugefügt. Aber immer noch wird der Circlepage-Indikator in Greybox im Design von XML angezeigt. – JaseemAmeer

+3

Sie müssen es als Bibliotheksprojekt unter den "Android" -Einstellungen hinzufügen und nicht über den Java-Build-Pfad. –

2

Fehlendes Hinzufügen von myIndicator.onPageScrolled(myViewPager.getCurrentItem(), 0, 0); kann auch dazu führen, dass CirclePageIndicator nicht funktioniert.

zB: myViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { @Override public void onPageSelected(int position) { myIndicator.onPageScrolled(myViewPager.getCurrentItem(), 0, 0); } });