2012-02-14 29 views
0

我需要在用戶完成通話後顯示一些提示。如何在android手機掛機後立即創建提醒對話框?

我創建了一個接收器,監控this.Now我想展示一些alert.But我不能夠顯示it.Maybe因爲我現在用的情況下是錯誤的...

這是我的代碼...

@Override 
public void onReceive(Context context, Intent intent) { 
    Bundle bundle = intent.getExtras(); 

    if (null == bundle) 
     return; 

    String phonenumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); 

    Log.i("OutgoingCallReceiver", phonenumber); 
    Log.i("OutgoingCallReceiver", bundle.toString()); 
    if(phonenumber.equals("10000")) 
    { 

     AlertDialog alertDialog = new AlertDialog.Builder(context).create(); 
     alertDialog.setTitle("Caution"); 
     alertDialog.setMessage("Data Usage Exceeded"); 
     alertDialog.setButton("OK", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 
      return; 
     } }); 
     setResultData(null); 

    } 
} 
+1

請告訴我們一些代碼,以便我們可以糾正你犯任何錯誤。 – nhaarman 2012-02-14 12:35:12

+0

嗨Niek我已經更新了我的問題.... – 2012-02-14 12:38:22

+0

也許你可以通過做一些日誌記錄(一個System.out或其他東西)來檢查你的代碼是否已經到達。也許bundle是'null',也許這個phonenumber不等於10000等等。也許你的onReceive甚至沒有被調用。 – nhaarman 2012-02-14 12:42:56

回答

1

由於所有的代碼是達到像你說的,顯然你忘了這行:

alertDialog.show(); 
+0

哎呀...謝謝尼爾.. :) – 2012-02-14 12:52:08

0

您可以使用此警報。

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
        builder.setMessage("Some text"); 
        builder.setCancelable(true); 
        builder.setPositiveButton("OK", 
          new DialogInterface.OnClickListener() { 

           @Override 
           public void onClick(DialogInterface dialog, int id) { 
            // TODO Auto-generated method stub 
            dialog.cancel(); 
           } 
          }); 
        builder.create().show(); 
0

也許問題只是你不叫AllertDialog.show()方法?