Sobes.tech
Junior — Middle

Kuidas saab peamises lõimes sõnumit hankida, kasutades Handler ja Looper?

sobes.tech AI

Vastus AI-lt

Androidis kasutatakse peamiselt (UI) lõimes sõnumite töötlemiseks Looper klassi, mis loob sõnumite töötlemise tsükli, ja Handlerit, mis asetab sõnumid selle Looperi järjekorda.

Sõnumi saamiseks peamisel lõimel:

  1. Peamisel lõimel kutsutakse välja Looper.getMainLooper(), mis tagastab peamise lõime Looperi.
  2. Looperiga seotud Handler luuakse:
Handler handler = new Handler(Looper.getMainLooper()) {
    @Override
    public void handleMessage(Message msg) {
        // Sõnumi töötlemine peamisel lõimel
    }
};
  1. Sõnumeid või Runnable objekte saab saata sellele Handlerile, ja need töödeldakse peamisel lõimel.

Nii tagavad Handler ja Looper sõnumijärjekorra ja töötlemise mehhanismi peamisel lõimel, võimaldades turvaliselt uuendada UI-d teistest lõimedest.