弹出窗口
问题描述:
我想弹出在特定时间对话框中的任何应用程序我的代码:弹出窗口
public class testPOPDialog extends Activity {
/** Called when the activity is first created. */
private Handler mHandler = new Handler();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mHandler.postDelayed(mUpdateTimeTask, 1000);
}
private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
AlertDialog d = new AlertDialog.Builder(testPOPDialog.this)
.setTitle("tanchulai")
.setMessage("bucuo de tanchulai")
.create();
d.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
d.show();
}
};
}
它给我
12-03 10:12:18.162: ERROR/AndroidRuntime(571): android.view.WindowManager$BadTokenException: Unable to add window [email protected] -- permission denied for this window type
这是什么权限 如果我删除d.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
我应用程序是正确的.....
答
此权限添加到您的清单:
android.permission.SYSTEM_ALERT_WINDOW
答
在您的menifest文件中使用您希望显示为弹出式窗口的文件.- >> android:theme =“@ android:style/Theme.Dialog”
+0
感谢您的回答,我的问题是要弹出的对话框不管什么节目正在运行,就像一个时钟应用程序c时间到了。它可以弹出一个对话框 – pengwang 2010-12-03 10:25:21
答
首先感谢给Mathias Lin
我是新来的Android所以这是很难我设置许可Mathias Lin
的回答知道。 因为我不知道如何设置权限以及清单文件的位置。
最后我在Mathias Lin
的回答帮助下完成了。所以我做出了详细的答案。
在mainfest文件使用
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
后
<uses-sdk
android:minSdkVersion=...
android:targetSdkVersion=... />
为
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="16" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
嘿,你是惊人的,它的作品... – Piyush 2010-12-03 11:03:31