Android Fragment does not respect match_parent as height

I had the same problem and think it happens when you inflate the layout in the Fragment’s onCreateView with null, like you did here:

mRootView = (ViewGroup) inflater.inflate(R.layout.list_content, null);

Instead you have to do this:

mRootView = (ViewGroup) inflater.inflate(R.layout.list_content,container, false);

Where container is the Viewgroup. At least, that solved the problem for me.

<android.support.v4.widget.NestedScrollView
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    android:fillViewport="true"
    >

    <include layout="@layout/screen_main_fragment" />

</android.support.v4.widget.NestedScrollView>

I had to change layout_height=”wrap_content” to “match_parent”to make it work.

For some reason the FrameLayout does not get its layout from the XML.

I need to set it also in code (Fragment’s onCreateView):

mRootView = (ViewGroup) inflater.inflate(R.layout.list_content, null);
FrameLayout fl = (FrameLayout) mRootView.findViewById(R.id.listContainer);
fl.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
return mRootView;

Leave a Comment