嵌入包含gridview的dialogfragment导致不可滚动的gridview仅显示它的第一行

时间:2014-05-31 15:25:45

标签: android gridview android-dialogfragment viewstub

我的DialogFragment包含Gridview。将其显示为对话框按预期工作。现在,我尝试在DialogFragment中嵌入相同的Activity为此,我的ViewStub布局中的Activity定义如下:

<RelativeLayout>
<!-- Other children -->

    <ViewStub
        android:id="@+id/view_stub"
        android:layout_below="@id/tv_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:inflatedId="@+id/attachment"
        android:layout_centerHorizontal="true"/>

</RelativeLayout>

请注意,我这里没有指定膨胀布局。根据此Intent的{​​{1}}个附加内容,它可以将多个布局中的一个扩展到此存根中,其中一个是Activity的占位符:

DialogFragment

在检查了正确的<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> </FrameLayout> 个附加内容后,我对上述布局进行了充气,​​并使用以下代码添加Intent

DialogFragment

这导致viewStub.setLayoutResource( R.layout.dialog_fragment_placeholder ); flPlaceHolder = ( FrameLayout ) viewStub.inflate(); getSupportFragmentManager().beginTransaction() .add( flPlaceHolder.getId(), DialogFragment.newInstance( //arguments ), DialogFragment.TAG ) .commit(); 被添加,但DialogFragment仅显示第一行且不可滚动。如果需要这里是GridView

的布局
DialogFragment

我很确定问题是由于其中一个布局中的<GridView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:columnWidth="100dp" android:numColumns="auto_fit" android:gravity="center" android:background="#cc000000" android:listSelector="@android:color/transparent"> </GridView> / layout_height属性不正确,但我尝试在所有可能的文件中弄乱所有可能的值而没有任何好的结果。有什么帮助吗?

0 个答案:

没有答案