Androizii .help comunitatea Android-română.
Am creat o aplicație în care am înregistrat receptor de difuzare în clasa mea principală (Main Activity) și ori de câte ori am obține ceva în BroadcastReceiver meu Vreau să actualizeze interfața cu utilizatorul, de exemplu, vreau să arăt o fereastră de avertizare, sau instala orice text al MainActivity mele. I a lua toate valorile în receptor meu, dar nu le poate stabili, cineva mă poate ajuta, astfel încât să pot actualiza BroadcastReceiver interfața cu utilizatorul.
Clasa mea BroadcastReceiver clasa MainActivity interne astfel: -
Orice ajutor va fi semnificativ
Top 5 raspunsuri
Eu folosesc o abordare total diferită de a that.Pass handler exemplu pentru receptor de radiodifuziune, plasându-l în intent.Than într-un receptor de difuzare folosind procesorul pentru a trimite un mesaj la activitatea dvs. de clasă, care actualizează interfața în clasa personalizată manipulant metoda dvs. onHandleMessage.
utilizați în prezent handler Myhandler = new MyHandler (); a crea handler obiect în domeniul de aplicare globală a nivelului activității de vizibilitate.
Acum a pus handler în intențiile putExtra. și apoi trimite această intenție prin sendBraodcast (intenție).
un receptor pentru a primi obiectul clasei de difuzare prin -obrabotchik getExtras și utilizarea acestuia, așa cum se arată mai jos în onReceive () metoda
Vă sugerez să utilizați un handler.
Inițializeze o Handler în activitate, exemplu: handler = new Handler () Furnizarea handler la BroadcastReceiver în constructor, în același fel cum am făcut-o pentru NissanTabBroadcast de mai sus Utilizare post () metoda de instanță dumneavoastră Handler în onReceive () metoda să prezinte executabilă care actualizează interfața de utilizare
Soluție Etochistoe îmi pot imagina.
Intenționez, receptor de difuzare să fie conștient de activitatea fluxului principal și o copie a mesajului handler este folosit pentru a transmite mesajul la domeniul principal de activitate
Am folosit acest mecanism pentru a verifica dacă receptorul este difuzat deja înregistrat sau nu. Uneori este necesar pentru înregistrarea radiodifuzorilor în mod dinamic și nu doresc să facă acest lucru de două ori sau vă prezenta pentru utilizator, în cazul în care receptorul de difuzare este de lucru.