在android

时间:2017-08-29 09:28:02

标签: android

enter image description here enter image description here 我在popup中有一个问题,我的弹出对话框显示非结构化,我想这样,这里我附加了我的android XML。为什么我的pop太小。这是我的代码我应用线性布局填充父亲这是一个问题? ?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent">
<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Video Download Quality"
        android:textColor="@color/colorPrimaryBlack"
        android:textSize="20dp" />

    <RadioGroup
        android:id="@+id/radio"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp">
        <RadioButton
            android:id="@+id/radiofrst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="360dp" />
        <RadioButton
            android:id="@+id/radiosecond"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="480dp" />

        <RadioButton
            android:id="@+id/radiothird"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="720dp" />
        <RadioButton
            android:id="@+id/radioforuth"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1080dp" />
    </RadioGroup>
</LinearLayout>

4 个答案:

答案 0 :(得分:1)

尝试使用Window编写对话框的高度和宽度,如下面的代码

Window window = customDialog.getWindow();
window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.WRAP_CONTENT);
window.setGravity(Gravity.CENTER);
customDialog.show();

并在LinearLayout中添加一些android:layout_marginpadding,如下所示

<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:layout_margin="10dp"
 android:layout_gravity="center"
 android:orientation="vertical">

答案 1 :(得分:1)

最简单的方法是在父布局中使用android:layout_marginandroid:padding。你可以使用这样的东西:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="15dp"
    android:layout_gravity="center"
    android:orientation="vertical">

  ...

</LinearLayout>

答案 2 :(得分:1)

为布局添加一些余量:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_margin="10dp">
<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Video Download Quality"
        android:textColor="@color/colorPrimaryBlack"
        android:textSize="20dp" />

    <RadioGroup
        android:id="@+id/radio"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp">
        <RadioButton
            android:id="@+id/radiofrst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="360dp" />
        <RadioButton
            android:id="@+id/radiosecond"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="480dp" />

        <RadioButton
            android:id="@+id/radiothird"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="720dp" />
        <RadioButton
            android:id="@+id/radioforuth"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1080dp" />
    </RadioGroup>
</LinearLayout>

答案 3 :(得分:1)

你可以这样试试。它将设置为所有屏幕尺寸。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:background="#50000000"
    android:gravity="center">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_gravity="center"
        android:layout_marginLeft="50dp"
        android:layout_marginRight="50dp"
        android:background="@color/colorWhite"
        android:orientation="vertical"
        android:padding="15dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Video Download Quality"
            android:textSize="20dp" />

        <RadioGroup
            android:id="@+id/radio"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp">

            <RadioButton
                android:id="@+id/radiofrst"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:checked="true"
                android:text="360dp" />

            <RadioButton
                android:id="@+id/radiosecond"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="480dp" />

            <RadioButton
                android:id="@+id/radiothird"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="720dp" />

            <RadioButton
                android:id="@+id/radioforuth"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1080dp" />
        </RadioGroup>
    </LinearLayout>