我的自定义对话框很窄。我想要更广泛的对话框。 所以,我添加一些填充,它改变了一点..如果这个填充是烦人的,只要忘记它。 请给我一些更广泛的自定义对话框的想法。 这是屏幕截图ScreenShot
这是我的自定义对话框布局xml layout_customdialog.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="fill_horizontal"
android:background="@android:color/transparent"
android:orientation="vertical"
android:padding="15dp"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/btnViewCur_close"
android:layout_width="28dp"
android:layout_height="28dp"
android:layout_gravity="right"
android:adjustViewBounds="false"
android:background="@drawable/closebutton_selector"
android:clickable="true"
android:src="@drawable/ok"
android:textColorLink="@android:color/transparent" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp" >
<TextView
android:id="@+id/titleCustomWorldCurrencyText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="left"
android:padding="5dp"
android:text="@string/titleCurrencyCustom"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/Green"
android:textStyle="normal"
android:typeface="serif" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingTop="15dp" >
<!-- -add your views here -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="5dp" >
<TextView
android:id="@+id/usdWorldCurCustomDialogText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/SkyBlue"
android:padding="3dp"
android:text="@string/lblUsdCustomDialog"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="normal"
android:typeface="serif" />
<EditText
android:id="@+id/usdWorldCurCustomEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:ems="10"
android:inputType="number" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="5dp" >
<TextView
android:id="@+id/worldCurCustomDialogText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@color/SkyBlue"
android:padding="3dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="normal"
android:typeface="serif" />
<EditText
android:id="@+id/worldCurCustomDialogEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number" >
</EditText>
<Button
android:id="@+id/btnCurrencyCustomConvert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginTop="5dp"
android:text="@string/btnCurrencyCustomConvert" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
这是java文件
Dialog dialogCur = new Dialog(MainTabActivity.this);
Window windowCur = dialogCur.getWindow();
dialogCur.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialogCur.setContentView(R.layout.layout_customdialog);
//acquire ids, I skip them
dialogCur.setCanceledOnTouchOutside(false);
dialogCur.show();
btnCloseCustomDialogCurrency
.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dialogCur.dismiss();
}
});
btnConvertCurrency
.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
}
});
答案 0 :(得分:3)
在 setContentView()
之后添加此行 dialogCur.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
答案 1 :(得分:3)
我无法看到屏幕截图,但您可能会遇到类似我的问题。
试试这个:
dialogCur.show();
dialogCur.getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);