1. 程式人生 > >Android提供常用的訊息彈出框,Toast和Alert。

Android提供常用的訊息彈出框,Toast和Alert。

Android提供兩個常用的訊息彈出框,Toast和Alert。
Toast
Toast是一種短暫的提示框,並不需要使用者互動,也不會將focus移過來,因此可以適合大多數的場景,向用戶進行資訊提示。在之前的學習中,已經多次使用到Toast了。
建立一個Toast很簡單,使用靜態方法makeText(Context context, CharSequence text | int resId, int duration),將String(或者String的ID),以及顯示的時間長短(LENGTH_SHORT或者LENGTH_LONG)就可以得到一個Toast的物件。
上面是最常用的方式,但是如果要顯示成其他的view,而不僅僅是text,可以使用Toast的建構函式Toast(Context context),然後使用setView()設定所顯示的view,通過setDuration()設定顯示時間即可。
如果我們需要顯示Toast,只要呼叫show()的方法即可。例如:
private void insertEmployee()
{
   //呼叫顯示Toast對話方塊
    Toast.makeText(TestMsg.this, "haha,Insert Employee Successfully!", Toast.LENGTH_LONG).show();
};
Alert
傳統的方式,是dialog box的形式,需採用AlertDialog,當一個警告框彈出之後,將獲得focus,必須由使用者來關閉它,用於顯示重要的錯誤或者事件,必須確保使用者知曉的場景或者一些驗證的資訊。
最容易的警告框通過AlertDialog.Builder類來建立,可以依次呼叫setMessage()
設定顯示文字內容,setTitle()setIcon(),以及設定下面的按鈕setPositiveButton(),setNeutralButton(),setNegativeButton(), 這幾個button具體和名字沒有什麼關聯,只是表明依次的位置隨左中右,並且最多顯示三個按鍵,我們需要設定這些按鍵的顯示內容和點選觸發的處理。最後呼叫show()方法,將其顯示。
如果我們需要先建立builder物件,然後進行配置,最後再顯示,可以先使用create(),然後設定上述內容,最後呼叫show()。一旦show()呼叫,則一直等等使用者的處理。
下面是一個警告框的顯示例子,我們對告警框的內容依次設定:
private void AlertDialog()
{
    //Alert Dialog
    new AlertDialog.Builder(TestMsg.this)
    .setTitle("Alerting Message")
    .setMessage("Ha Ha!")
    .setNegativeButton("Close", new DialogInterface.OnClickListener() {   
        @Override
        public void onClick(DialogInterface dialog, int which) {
            //do nothing - it will close on its own
        }
     })
   .show();
    
};