2017-03-21 2 views
0

ich ziemlich neu bin auf Java (erste post) und versuchen, eine Schleife zu machen, macht folgenden:Ärger mit Thread zu Schlaf - Android

Beitrag einen Textview, Warten, Post zu einem anderen Textview, Warten , Leeren Sie beide (indem Sie "" an jeden "" "schreiben)," Sleep "," Loop wiederholen ".

Die Schleife die Nachrichten an das que senden fast augenblicklich, ohne dabei den Schlaf Teil dazwischen

  Runnable postRight = new Runnable() { 
       public void run() { 
        right_side.setText("post right"); 
              } 
       }; 

      Runnable postLeft = new Runnable() { 
       public void run() { 
        left_side.setText("post left"); 
       } 
      }; 


      Runnable clear = new Runnable() { 
       public void run() { 
        left_side.setText(" "); 
        right_side.setText(" "); 
       } 
      }; 

////////////////////// ///////////////////////////////////////

  while (i < 3) { 
       Log.i(TAG, "Entered while"); 

       long Timer = SystemClock.uptimeMillis(); 

       handler.postAtTime(postLeft, Timer + 1000); 
       Log.i(TAG, "post left"); 

       handler.postAtTime(postRight, Timer + 2000); 
       Log.i(TAG, "postright"); 

       handler.postAtTime(clear, Timer + 3000); 
       Log.i(TAG, "clear"); 

       Thread t = new Thread() { 
        public void run() { 
         try { 
          Thread.sleep(4000); 
          runOnUiThread(new Runnable() { 
           public void run() { 
            Log.i(TAG, "inside runnable"); 
           } 
          }); 
         } catch (InterruptedException e) { 
          e.printStackTrace(); 
         } 
        } 
       }; 
       t.start(); 
       i++; 
      } 

Antwort

0

der Faden t ist Schlafen, aber es ist ein eigener Thread, so dass der Haupt-Thread nach dem Initiieren weitergeht und der Haupt-Thread niemals schläft