DialogFragment FEATURE_NO_TITLE缩小

时间:2014-08-13 16:36:31

标签: android android-dialogfragment

我正在显示DialogFragment。我实现它没有任何问题,直到我决定使用getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);删除标题。完成后,整个事情缩小了。这是我的xml和类文件。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:background="@color/white"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="@dimen/activity_vertical_margin">

    <TextView
        android:id="@+id/product_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textColor="@color/red"
        android:textSize="20sp"
        android:text="@string/client_name_hint"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="100"
        android:layout_marginTop="@dimen/activity_vertical_margin"
        android:layout_marginBottom="@dimen/activity_vertical_margin"
        android:orientation="horizontal">

        <ImageView
            android:id="@+id/product_image"
            android:layout_width="0dp"
            android:layout_weight="50"
            android:layout_height="match_parent"/>

        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="50"
            android:layout_height="match_parent"
            android:orientation="vertical">

            <TextView
                android:id="@+id/product_price"
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:textColor="@color/red"
                android:textSize="30sp"
                android:textStyle="bold"
                android:text="$349.00"/>

            <TextView
                android:id="@+id/product_color"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:textStyle="bold"
                android:textSize="20sp"
                android:text="Color: White"/>

        </LinearLayout>

    </LinearLayout>

    <TextView
        android:id="@+id/product_description"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="@dimen/activity_vertical_margin"
        android:background="#aaada9"
        android:text="Text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:layout_marginTop="@dimen/activity_vertical_margin"
        android:layout_gravity="right"
        android:gravity="center_vertical"
        android:drawableRight="@android:drawable/ic_input_add"
        android:textColor="@color/red"
        android:text="@string/buy"/>

</LinearLayout>




public class ProductsDetailFragment extends DialogFragment {

    public static final String TAG = "products_detail";

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_product_detail, container, false);
        getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        return view;
    }
}

我错过了什么?

1 个答案:

答案 0 :(得分:9)

在onCreate()中设置样式,这有助于我在没有标题的情况下缩小对话框。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setStyle(DialogFragment.STYLE_NO_TITLE, android.R.style.Theme_Holo_Light_Dialog_NoActionBar_MinWidth);
}