2013-06-21 2 views
0

Как я могу повторить тост за определенное количество раз, а не просто зацикливать, как сейчас, учитывая задержку таймера?как повторить код для определенных целей?

public class MainActivity extends Activity { 
    Button btn; 
    EditText edit; 
    TextView view; 
    Timer myTimer = new Timer(); 
    MyTimerTask myTimerTask= new MyTimerTask(); 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     btn =(Button)findViewById(R.id.bu); 

     btn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) {    
       edit=(EditText)findViewById(R.id.ed1); 
       view=(TextView)findViewById(R.id.te); 

       int aa = Integer.valueOf(edit.getText().toString()); 

       view.setText(edit.getText().toString()); 
       myTimer.scheduleAtFixedRate(myTimerTask, aa, aa); 
      } 
     }); 
    } 

    private class MyTimerTask extends TimerTask { 
     @Override 
     public void run() { 
      runOnUiThread(new Runnable() { 
       @Override 
       public void run() 
        //code to do 
        Toast.makeText(getBaseContext(), "Toast test", Toast.LENGTH_SHORT).show(); //how to repeat this toast for certain counts not just looping like now 
      } 
     }); 
    } 
} 

ответ

0

Вы можете увеличить счетчик при каждом выполнении MyTimerTask.run(). Затем, когда этот счетчик равен количеству раз, когда вы хотите, чтобы оно отображало уведомление о Toast, вы можете отменить с myTimer.cancel();.

+0

Количество раз, когда я хочу показать тост, будет введен пользователем. поэтому то, что мне нужно, это int string it.excuse my English. – user2509672

+0

В этом случае просто сохраните значение, введенное в поле класса, и сравните поле класса с счетчиком. – tvkanters

+0

Разве вы не думаете, что если я буду использовать 'CountDownTimer', будет проще и проще? Проблема еще в том, как повторить это для меня. если вы не возражаете, можете ли вы написать код для повтора 'CountDownTimer'? – user2509672

Смежные вопросы