Crea gestori multipli in base alla risposta del server e gestisci gli stati

Vorrei creare più gestori e funzionare quando la mia applicazione riceve una risposta dal server.

I gestori possono avere un massimo di 4 e minimo 1.

  • Come aprire il programma di posta elettronica tramite intenti (ma solo un programma di posta elettronica)
  • Dopo l'aggiornamento di Android Studio: metodo Gradle DSL non trovato: 'runProguard ()'
  • Come submit il token in intestazione al server in Android
  • Ottenere l'errore della camera nell'applicazione a barre Zxing
  • Rilasciare la memory di particolari attività quando viene distrutto
  • come url codificare in android?
  • Problema

    In realtà voglio dividere la schermata cellulare in diverse parti e dopo dividere ho bisogno di visualizzare diversi tipi di dati in tutte le parti dello schermo. E in queste parti, each parte ha più elementi da visualizzare.

    per esempio! L'utente desidera dividere lo schermo in due parti

    la parte uno contiene un video, un'image e ancora un video. (3) articolo in una parte

    parte due contengono immagini e un video. (2) articolo nella seconda parte.

    each elemento deve essere visualizzato per un determinato periodo di tempo (definito dall'utente)

    quando l'ora di completamento di un elemento, l'applicazione deve visualizzare l'elemento successivo nell'elenco.

    Quello che ho provato

    Come per la mia conoscenza c'è un modo per raggiungere questo è quello

    Ho bisogno di creare più gestori che si occupino di tutte le parti.

    ho provato a creare nuovo gestore utilizzando un for loop e salvo istanza, ma facendo così non riesco a gestire quando e quale parte della schermata deve essere aggiornata.

    Per favore, può qualcuno dirmi come creare qualsiasi numero di gestori dynamicmente. e salvare gli stati.

    private void createStreamHandler(){ for(int i=0; i < serverResponse2.vMedialist.size(); i++){ final int index = i; Handler hadler = new Handler(); hadler.postDelayed(myRunnable = new Runnable() { public void run() { if (sDuration[0] <= 0){ // check if wait counter expired? get show next media and gets // its display duration sDuration[0] = runPlaylist(serverResponse2.vMedialist.get(index), index); } sDuration[0] -= 5; handler.postDelayed(myRunnable, 5000); } }, 500); streamsHandler.add(hadler); streamRunnable.add(myRunnable); } } private int runPlaylist(ArrayList<Media2> mediaList, int index){ Log.e("mediaList ", "mediaList size at " + index +" = " + mediaList.size()); return mediaList.get(index).duration; } 

    Ogni volta che sto ottenendo la dimensione dell'ultimo indice del arrayslist. e solo l'ultimo gestore continua a funzionare. Aiutaci, sono attaccato.

    Come posso mantenere la traccia di tutti i gestori?

    C'è un altro modo per gestire i gestori.

    Spero di aver spiegato bene il problema. Vi preghiamo di suggerire qualsiasi soluzione. Grazie.

  • Carica image su facebook dall'unità
  • Qual è il modo più semplice per rendere l'image intabile in libgdx?
  • Frammento di Android (con pacchetto di compatibilità a 2.3.3) crea "il figlio specificato ha già un errore genitore"
  • Android animare il mio layout relativo da basso verso l'alto e in alto e in basso utilizzando l'animation di translate sul click di visualizzazione image
  • Come mettere in pausa android.speech.tts.TextToSpeech?
  • onSaveInstanceState e frammenti?
  • One Solution collect form web for “Crea gestori multipli in base alla risposta del server e gestisci gli stati”

    Se capisco correttamente il tuo codice devi sostituirlo

     handler.postDelayed(myRunnable, 5000); 

    con

     handler.postDelayed(this, 5000); 

    perché myRunnable è l'ultimo Runnable che hai creato. E tutti i tuoi gestori lo postano invece di se stessi.

    EDIT:
    Si memorizza in each gestore è index di numero. È ansible aggiungere il metodo

     void handleResponse(int index, Object someData) 

    alla tua class, che crea i gestori. Dopo di che each gestore può call handleResponse(index, data) per notificare alcune modifiche.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.