2015-04-30 6 views
56

setOnScrollListener ist veraltet. Lesen der Dokumente from here es sagt zu verwenden addOnScrollListener(OnScrollListener) und removeOnScrollListener(OnScrollListener).Android setOnScrollListner auf RecyclerView veraltet

Was ist der richtige Weg zu ?

Do i removeOnScrollListner in verwenden muß, und setzen Sie ihn wieder addOnScrollListener in onResume mit bis ??

Antwort

92

addOnScrollListener(OnScrollListener) bedeutet, dass Sie einem RecyclerView mehr als einen Listener hinzufügen können.

removeOnScrollListener(OnScrollListener) bedeutet, dass Sie einen der Listener entfernen können, die an einen bestimmten RecyclerView angeschlossen sind. Wenn the arg auf null gesetzt wurde, entspricht es clearOnScrollListeners() Methode.

Und, clearOnScrollListeners() können Sie alle Zuhörer aus einem RecyclerView entfernen.

+1

Vielen Dank, aber ich verstehe bereits das Konzept .. Ich möchte einen richtigen Anwendungsfall 'hinzufügen und entfernen OnScrollListener' –

+0

@rogerthatcode Sehen Sie dies: [Listener vs Set Listener] (http: // Stackoverflow. com/a/7181144/4206925) und [Widgets sollten für jeden Ereignistyp mehr als einen Listener unterstützen.] (http://code.google.com/p/android/issues/detail?id=5711). Ich denke, dass ein Callback alles verarbeiten kann, aber mehr Callbacks lassen die Listener einfach wiederverwendbar werden, genau wie die Schnittstelle in Java. Eine Klasse kann mehr als eine Schnittstelle implementieren, während jede Schnittstelle für jede Klasse verfügbar ist. Hmm, genau das verstehe ich. – MewX

+0

ich denke ich bekomme dich jetzt, ich habe eine Bearbeitung vorgeschlagen. akzeptiert deine Ans, sobald sie genehmigt wird. –