2013-05-22 5 views
6

Jak mogę przesłonić metodę onScroll widoku w Androidzie? Używam go do widoku, aby zapobiec aktualizacji w polach widoku podczas przewijania. Używam dwuwymiarowej tablicy do przechowywania wartości pól wyboru.przesłonięcie metody onScroll w com.android.View w kodowaniu android?

Używam następujących, ale nie działa dla mnie.

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

Używam go dla aplikacji, która zawiera pola wyboru, ale po jej przewinięciu, traci ona poza ekranem wartości –

+1

http://stackoverflow.com/questions/16295110/how-to-set-the-visibilty- of-button-in-a-custom-listview może to być pomocne, a nie dokładne pytania, ale może być przydatne – Saad

+0

pomógł ,,,, thnx –

Odpowiedz

1

Nie możesz. Jeśli chcesz zastąpić metodę podaną w klasie API, musisz rozszerzyć tę klasę. Proponuję implementację własnego niestandardowego View i zastąpię metodę 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! */ 
    } 
} 

Jednak nie uważam tego za najlepszy sposób poradzenia sobie z sytuacją. Sugerowałbym użycie ViewHolder. Zasadniczo jest to kontener przechowujący informacje o twoich przedmiotach z View. Polecam go używać, szczególnie jeśli masz listę lub wiele przedmiotów do obsłużenia. Możesz przeczytać wszystko tutaj w this question!