2012-08-30 105 views
2

是否可以在屏幕上製作一個按鈕,每隔5秒就會自動顯示一個按鈕? 通過使用這種每5秒間隔隱藏並顯示一個可見按鈕

b.setVisibility(View.VISIBLE); 

我們可以看到和

b.setVisibility(View.GONE); 

我們可以隱藏它。但是我不能管理由全光照的時間間隔做出來。 有什麼想法?請分享。

+3

使用一個'Handler.postDelayed()'呼叫,如在描述[這個問題](http://stackoverflow.com/questions/10845172/android-running-a-method-periodically-using-postdelayed-call)。 –

+0

更好地創建服務並在那裏運行你的東西。 – Praveenkumar

+0

使用動畫。 –

回答

2

使用此

new CountDownTimer(9000000, 5000) { 

public void onTick(long millisUntilFinished) { 
    if(b.getVisibility() == View.GONE) 
     b.setVisibility(View.VISIBLE); 
    else 
     b.setVisibility(View.GONE); 
} 

public void onFinish() { 
    //Restart timer if you want. 
} 
}.start(); 
+1

確保您在啓用onPause時取消定時器 – nandeesh

4

有幾個不同的方式,一種是處理程序和可運行:

public class Example extends Activity { 
    private Handler mHandler = new Handler(); 
    private Runnable alternate = new Runnable() { 
     public void run() { 
      // Alternate visible and not 
      mHandler.postDelayed(alternate, 5000); 
     } 
    }; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     mHandler.postDelayed(alternate, 5000); 
    } 
}