我已经在android中进行了一个简单的对话活动,用于学习目的并制作一个自定义对话框,并在另一个活动中显示一切顺利,唯一的问题是我放的背景图像没有在整个Dialogbox背景中显示..但是它还显示一个白色背景作为角落,在这里我放了一个屏幕,这样我的问题就会很清楚..!
我的形象:
我的代码是:
dialog.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:background="#00000000"
android:gravity="center"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:background="@drawable/bg_dilog"
android:orientation="vertical" >
<ImageView
android:id="@+id/dialog_close"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="5dp"
android:layout_marginTop="5dp"
android:background="@drawable/btn_close_38" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="20dp"
android:paddingLeft="30dp"
android:paddingRight="30dp" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Login"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#202425" />
<Button
android:id="@+id/usernm"
android:layout_width="wrap_content"
android:layout_height="32dp"
android:layout_marginTop="5dp"
android:background="@drawable/text_box"
android:gravity="center"
android:hint="Please enter your client number"
android:textSize="12dp" />
<Button
android:id="@+id/pwd"
android:layout_width="wrap_content"
android:layout_height="31dp"
android:layout_marginTop="5dp"
android:background="@drawable/text_box"
android:gravity="center"
android:hint="Please password"
android:padding="5dp"
android:textSize="12dp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:textColor="#6e6d6c"
android:layout_marginTop="7dp"
android:text="Remember me" />
<ImageView
android:id="@+id/chk_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="7dp"
android:background="@drawable/checkbox"
android:textColor="#000000" />
</LinearLayout>
<Button
android:id="@+id/login"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="5dp"
android:background="@drawable/btn_small"
android:gravity="center"
android:text="Login"
android:textColor="#f6f1eb"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:3)
尝试调用对话框构造函数:
getWindow().setBackgroundDrawableResource(android.R.color.transparent);
答案 1 :(得分:2)
尝试在 res / values / styles.xml
上添加样式 <resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AlertDialogCustom" parent="@android:style/Theme.Holo.Light.Panel">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">true</item>
</style>
</resources>
并将这些样式应用于对话框,如下面的代码:
final Dialog dialog = new Dialog(HomePage.this, R.style.AlertDialogCustom);
dialog.setContentView(R.layout.popupaddcustomer);
dialog.show();