2016-04-27 8 views
0

Ich möchte 2 Methode gleichzeitig ausführen. Es zeigt jedoch nur die Ausgabe der zweiten Methode. Kannst du mir helfen?Mehrere asynctasks in android

ImageView imgView;

ImageView imgView2;

public void loadImageToImageView() {imgView.setImageBitmap (currentBitmap);}

@TargetApi (Build.VERSION_CODES.HONEYCOMB)

public void DrawLetter() { 
    new AsyncTask<Void, Void, Bitmap>() { 

     @Override 
     protected void onPreExecute() { 
      super.onPreExecute(); 

     } 
     @Override 
     protected Bitmap doInBackground(Void... params) { 
      Draw(); 
      Draw2(); 
      return currentBitmap; 
     } 
     @Override 
     protected void onPostExecute(Bitmap bitmap) { 
      super.onPostExecute(bitmap); 
      if(bitmap!=null) { 

       loadImageToImageView(); 
      } 
     } 
    }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); 


} 

Antwort

0

Ich gehe davon aus Sie diese Aufgabe zweimal ausführen. Aber die zwei Zeiten werden das Ergebnis in die gleiche Bildansicht laden. Das bedeutet, dass der zuerst beendete Teil von dem zweiten überschrieben wird. Wenn Sie beide sehen möchten, müssen Sie zwei separate Bildansichten verwenden.

+0

Sie meinen Draw und Draw2 sollte nicht currentBitmap zurückgeben. Aber wie? Ich meine, ich möchte beide das gleiche Bild sehen – xiac

+0

Nein, ich meine loadImageToImageView() muss auf zwei separate Bildansichten laden. –

+0

Ich habe meine Frage aktualisiert. Und ich verstehe den Weg nicht? Public void loadImageToImageView() {imgView.setImageBitmap (currentBitmap); imgView2.setImageBitmap (currentBitmap);} Sollte ich so verwenden? – xiac

Verwandte Themen