onScroll wird aufgerufen, wenn ich listView.onScrollListener (this) setze, aber ohne Berührung

Wenn ich die onScrollListener für meine ListView ruft es onScroll. Dies verursacht einen Absturz, weil bestimmte Dinge noch nicht initialisiert wurde.

Ist das normal? Hinweis: dies ist geschehen, ohne mich auch nur zu berühren Sie das Telefon.

public class MainActivity1 extends Activity implements OnClickListener, OnScrollListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.layout1);

    ListView lv = (ListView)findViewById(R.id.listview1);
    lv.setOnScrollListener(this);
    ...
}
...
public void onScroll(AbsListView view, int firstVisibleItem,
        int visibleItemCount, int totalItemCount){
    if( firstVisibleItem+visibleItemCount == totalItemCount ){
        pullContactList();
    }
}
Kommentar zu dem Problem
es ist etwas falsch . oncreate ist die erste Methode, die aufgerufen wird, aus einer Tätigkeit Kommentarautor: stinepike
mein schlechtes, es wird tatsächlich aufgerufen wird, wenn der onCreate-Anrufe setOnScrollListner. ist das normal? Kommentarautor: Siavash
was noch nicht initialisiert wurde? Das Zeug in pullContactList()? Kommentarautor: LuxuryMode
Ja. Und auch meinen adapter. Ich weiß, ich kann anrufen setonscrolllistner am Ende meiner oncreate. Oder verwenden Sie eine variable in onscroll zu überspringen, deren Inhalt auf den ersten Aufruf an. Aber diese sind alle patches. Gibt es eine Möglichkeit zu zwingen, setonscrolllistner nicht aufrufen onscroll? Muss ich die Fahrt über den Konstruktor? Kommentarautor: Siavash

InformationsquelleAutor der Frage Siavash | 2013-04-18

Schreibe einen Kommentar