2013-05-22 4 views
6

Come posso sovrascrivere il metodo onScroll della vista in Android? Lo utilizzo per la vista per impedire l'aggiornamento nelle caselle di controllo della vista mentre lo scorrimento. Io uso una matrice bidimensionale per memorizzare i valori della casella di controllo.sovrascrivendo il metodo onScroll di com.android.View nella codifica Android?

Io uso il seguente ma non ha funzionato per me.

public void onScroll(View view, int firstItem, int visibleItemCount, int totalItemCount { 
    // here i check the view's check box 
    checkBox1.setchecked(true); 
} 
+0

lo sto utilizzando per un'app che contiene caselle di controllo, ma quando lo scorrimento, perde i valori fuori dallo schermo –

+1

http://stackoverflow.com/questions/16295110/how-to-set-the-visibility- di-button-in-a-custom-listview questo potrebbe essere utile, non i ques esatti ma potrebbe essere utile – Saad

+0

ha aiutato ,,,, thnx –

risposta

1

Non è possibile. Se si esegue l'override di un metodo fornito in una classe API, è necessario estendere tale classe. Suggerirei di implementare la tua personalizzata View e sostituire il metodo onScroll.

public class YourCustomView extends View 
{ 
    @Override 
    public void onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) 
    { 
     /** Whatever you need to do, do it here! */ 
    } 
} 

Tuttavia, non trovo questo il modo migliore per gestire la situazione. Suggerirei di usare un ViewHolder. Fondamentalmente, è un contenitore che contiene informazioni sugli articoli di View. Consiglierei di usarlo, soprattutto se hai una lista o più elementi da gestire. Puoi leggere tutto qui a this question!