Android 自定义对话框未显示
我想显示一个简单的自定义对话框。对于初学者来说,我只想添加一个文本视图并查看对话框是否显示。
这是我的 xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:id="@+id/tvPreview"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/Instructions"></TextView>
</LinearLayout>
这是我的 onCreateDialog 功能代码:
@Override
protected Dialog onCreateDialog(int id) {
final Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.predialog);
dialog.setTitle("Tests of my Dialog");
return dialog;
}
当用户(我)按下菜单项时,我使用以下代码:
public void DiagTests(){
showDialog(0);
}
发生的情况是屏幕模糊,但对话框不显示。
有人知道我做错了什么吗?
PD:以防万一没有任何错误或警告。
感谢您的帮助
I want to show a simple custom dialog. For starters I simply wanted to add a text view and see if the dialog show.
This is my xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:id="@+id/tvPreview"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/Instructions"></TextView>
</LinearLayout>
This is my code for the onCreateDialog Function:
@Override
protected Dialog onCreateDialog(int id) {
final Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.predialog);
dialog.setTitle("Tests of my Dialog");
return dialog;
}
When the user (me) presses a menu item the I use this code:
public void DiagTests(){
showDialog(0);
}
What happens is that the screen obscures but the dialog doesn't show.
Does anyone have any idea of what I'm doing wrong?
PD: Just in case there are no errors or warnings of any kind.
Thanks for any help
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你可以尝试一下这个方法。创建一个自定义对话框类(这是一个类的示例,您可以使用您想要的):
在要使用它的类上定义对话框:
并在单击事件中启动它:
You could try this approach. Create a Custom Dialog class (this is an example of a class, you can use what you want):
Define the dialog on the class where it is going to be used:
And launch it in the click event: