2012-02-14 20 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()方法?