我是想在接受到短信以后就显示一个AlertDialog
public class ReceiverDemo extends BroadcastReceiver {
private static final String strRes = "android.provider.Telephony.SMS_RECEIVED";
@Override
public void onReceive(Context context, Intent intent) {
Log.i("JSY", "1");
new AlertDialog.Builder(context)
.setTitle(R.string.app_about)
.setIcon(R.drawable.icon)
.setMessage(R.string.warning)
.setPositiveButton(R.string.str_ok,
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialoginterface, int i)
{
// mMediaPlayer01.stop();
}
}).setNegativeButton(R.string.str_no,
new DialogInterface.OnClickListener()
{ public void onClick(DialogInterface dialoginterface, int i)
{
}
}) .show();
}代码如上,错误信息如下:
public class ReceiverDemo extends BroadcastReceiver {
private static final String strRes = "android.provider.Telephony.SMS_RECEIVED";
@Override
public void onReceive(Context context, Intent intent) {
Log.i("JSY", "1");
new AlertDialog.Builder(context)
.setTitle(R.string.app_about)
.setIcon(R.drawable.icon)
.setMessage(R.string.warning)
.setPositiveButton(R.string.str_ok,
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialoginterface, int i)
{
// mMediaPlayer01.stop();
}
}).setNegativeButton(R.string.str_no,
new DialogInterface.OnClickListener()
{ public void onClick(DialogInterface dialoginterface, int i)
{
}
}) .show();
}代码如上,错误信息如下:
也要注册吗
再注册个Activity就可以啦 对应的activity标签内加属性android:theme="@android:style/Theme.Dialog"定义成Dialog的风格,其他都和调用一般的Activity一样
Intent it=new Intent(context,DialogActivity.class);
context.startActivity(it);
<activity android:name=".dailog"
android:label="@string/app_name"
android:theme="@android:style/Theme.Dialog">
</activity>
R.java里还是没有生成id,这是怎么回事啊。
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.util.Log;public class Dailog extends Activity {
@Override
protected Dialog onCreateDialog(int id) {
// TODO Auto-generated method stub
Log.i("JSY", "3");
switch(id)
{
case 1:
return new AlertDialog.Builder(this)
.setTitle(R.string.app_about)
.setIcon(R.drawable.icon)
.setMessage(R.string.warning)
.setPositiveButton(R.string.str_ok,
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialoginterface, int i)
{
// mMediaPlayer01.stop();
}
}).create();
default:
return null;
}
}}
调用是这样的@Override
public void onReceive(Context context, Intent intent) {
Log.i("JSY", "1");
Intent it=new Intent(context,Dailog.class);
Log.i("JSY", "2");
context.startActivity(it);
Log.i("JSY", "5");
}
start不了
Intent it=new Intent(context,Dailog.class);
it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(it);