Come si sblocca la possibilità di scorrere su una nuova pagina dopo aver fatto clic su un pulsante in una pagina precedente?Modifica del conteggio di ViewPager
Attualmente ho un PagerAdapter. Il codice seguente crea un'istanza dell'oggetto. All'interno di getCount(), viene restituito un valore di 3 e quindi vengono eseguite 3 diapositive. Mi chiedevo se esistesse un modo per avere solo 3 visualizzazioni, ma dopo aver fatto clic su un pulsante, sblocca una quarta vista a cui ora puoi scorrere?
@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;
C'è un modo per cambiare il:
public int getCount() {
return 3;
}
Come un "setCount()" e quindi metterlo al // * codice * // per aumentare la quantità di diapositive?
Would aggiungendo
instantiateItem(collection,4);
lavoro da qualche parte funziona?
Grazie,
così ho provato ad aggiungere: (raccolta (ViewPager)) .addView (v1, 3); all'interno del listener dei clic ma non ha funzionato. Puoi dare qualche consiglio in più su come farlo? –
Ho fatto un 'notifyDatasetChanged()' –
ho provato ma si blocca. dovrei fare (raccolta (ViewPager)) .notifyDatasetChanged() tutto all'interno del listener dei clic. Inoltre è aggiunta o addview e su quale oggetto appartengono questi metodi, collezione? –