我有一个对话框,但有些如何有一个未知的背景图像。我怎样才能删除该图像。请指导我。
问问题
83 次
2 回答
2
您必须扩展对话框类,为您的对话框构建 xml 文件,例如
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Do you Want to bookmark?"
android:gravity="center"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/button_no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="No" />
<Button
android:id="@+id/button_yes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Yes" />
</LinearLayout>
</LinearLayout>
当然你可以做一些定制
对于您的自定义对话框类,您可以这样做
public class CustomizeDialog extends Dialog implements OnClickListener {
Button okButton;
public CustomizeDialog(Context context) {
super(context);
/** 'Window.FEATURE_NO_TITLE' - Used to hide the title */
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
yesButton = (Button) findViewById(R.id.button_yes);
yesButton.setOnClickListener(this);
noButton = (Button) findViewById(R.id.button_no);
noButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.button_yes:
dismiss();
//doSomething
break;
case R.id.button_no:
dismiss();
//doSomethingElse
break;
}
}
希望这将帮助您必须发布代码以弄清楚为什么这些背景框会出现在您面前,但是像我提到的那样行事应该可以为您解决问题
于 2012-05-08T09:22:57.107 回答
1
这可能是因为您使用标准AlertDialog
并设置了内容视图 + 无标题(尽管您没有设置标题,但它的空间将保留在对话框中)。
而是扩展Dialog
类并根据需要构建对话框。此外,如果您想使用自己的背景,Dialog
则实现一个扩展Theme.Dialog
和覆盖的主题:
<item name="android:windowBackground">@android:drawable/panel_background</item>
用你自己的drawable。
于 2012-05-08T08:58:00.510 回答