Zoeken…


Invoering

Een Looper is een Android-klasse die wordt gebruikt om een berichtenlus voor een thread uit te voeren, waaraan meestal geen lus is gekoppeld.

De meest voorkomende Looper in Android is de hoofdlus, ook wel bekend als de hoofdthread. Dit exemplaar is uniek voor een toepassing en is statisch toegankelijk met Looper.getMainLooper() .

Als een Looper is gekoppeld aan de huidige thread, kan deze worden opgehaald met Looper.myLooper() .

Maak een eenvoudige LooperThread

Een typisch voorbeeld van de implementatie van een Looper thread gegeven in de officiële documentatie maakt gebruik van Looper.prepare() en Looper.loop() en koppelt een Handler aan de lus tussen deze aanroepen.

class LooperThread extends Thread {
    public Handler mHandler;

    public void run() {
        Looper.prepare();

        mHandler = new Handler() {
            public void handleMessage(Message msg) {
                // process incoming messages here
            }
        };

        Looper.loop();
    }
}

Voer een lus uit met een HandlerThread

Een HandlerThread kan worden gebruikt om een thread met een Looper te starten. Deze looper kan vervolgens worden gebruikt om een Handler te maken voor communicatie ermee.

HandlerThread thread = new HandlerThread("thread-name");
thread.start();
Handler handler = new Handler(thread.getLooper());


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow