Jak odblokować możliwość przesuwania do nowej strony po kliknięciu przycisku na poprzedniej stronie?Zmiana Licznika ViewPager
Obecnie mam PagerAdapter. Poniższy kod tworzy egzemplarz elementu. W metodzie getCount() zwracana jest wartość 3, a zatem tworzone są 3 slajdy. Zastanawiam się, czy istnieje sposób, aby mieć tylko 3 widoki, ale po kliknięciu przycisku odblokujesz 4. widok, do którego możesz teraz przejść?
@Override
public Object instantiateItem(final View collection, int position) {
final LayoutInflater inflater = (LayoutInflater) TViewPager.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
TextView tv = new TextView(TViewPager.this);
//Describe the separate layouts of views
switch (position) {
case 1:
View v1 = inflater.inflate(R.layout.expander2, null, false);
((ViewPager) collection).addView(v1, 0);
final Button button = (Button) findViewById(R.id.button_click_me);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v1) {
Toast.makeText(getBaseContext(), "+1", Toast.LENGTH_LONG).show();
//*Some code*//
}
});
return v1;
Czy istnieje sposób, aby zmienić:
public int getCount() {
return 3;
}
jak "setCount()", a następnie umieścić go w jakimś kodzie // * // * zwiększenie ilości slajdów?
Byłoby dodanie
instantiateItem(collection,4);
praca gdzieś pracować?
Dzięki,
więc próbowałem dodać: (kolekcja (ViewPager)) .addView (v1, 3); w obrębie odbiornika kliknięć, ale nie zadziałało. Czy możesz dać trochę więcej porad, jak to zrobić? –
Zrobiłeś 'notifyDatasetChanged()' –
próbowałem, ale się zawiesił. zrobiłbym (kolekcja (ViewPager)) .notifyDatasetChanged() wszystko w odbiorniku kliknięcia. Czy jest to również add lub addview i do jakiego obiektu należą te metody, collection? –