Hirdetés

Keresés

Új hozzászólás Aktív témák

  • thon73

    tag

    válasz pigster #532 üzenetére

    Bocs, lehet h. sokat dumálok.
    Az AsyncTask több metódust is tartalmaz, melyek az UI szálon futnak: onPreExecute - a hátterszál indítása előtt, onPostExecute - háttérszál befejezésekor, onCancelled - felhasználói megszakításkor (vigyázat a háttér még futhat!) és az onProgressUpdate a háttérszállal párhuzamosan fut.
    Ezek bármelyikében írhatunk az UI elemekbe, ami a háttérszálban tilos! Az onProgressUpdate (amiről a cikk szól), lehetővé teszi akár azt, hogy a háttérben lejátszott pl. zeneszámokat egymás után megjelenítsük. Végső soron ez is a folyamat előrehaladásának jelzése.
    Ez azért jó példa, mert azt mutatja be, hogy az egész folyamatot másképp kell szervezni (erre jutottunk mi is végül.)

    Az eredeti kérdés (hátha tud rá valaki jó választ): A teljes AsyncTask lefutása után (tehát amikor az onPostExecute is már meghívásra került), miként lehet újra felébreszteni az eredeti Activity-t, hogy további tevékenységeket végezzen.
    Erre én/mi nem találtunk egyszerű megoldást. Szerintem az egész Android filozófiával ellentmond az, hogy EGY activity TÖBB feladatot végezzen, de hátha lesz valakinek ötlete/tapasztalata ebben.

Új hozzászólás Aktív témák