GridLayout from support library does not show 2 rows on Android 2, onChildVisibilityChanged Error

android, android-compatibility, android-layout, android-widget, grid-layout

Solution

I guess you missed to add XML namespace. Please correct it in this way:

<android.support.v7.widget.GridLayout 
     xmlns:grid="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
...
</android.support.v7.widget.GridLayout>

and don't forget to prefix attributes used by compatibility GridLayout with XML namespace too:

<ImageButton android:id="@+id/btnSentence"
    grid:layout_row="0"
    grid:layout_column="0"
    ...
/>

Hope it helps...

Problem

Has anybody gotten the support library to render a grid layout correctly in Android 2? Instead of 2 rows and columns I get a single row on the screen and see this error in the logcat output: Android GridLayout Could not find method android.support.v7.widget.ViewGroup.onChildVisibilityChanged The same exact layout is working on Android4 -> ICS when I change the layout tag from android.support.v7.widget.GridLayout to GridLayout Could this be some issue with the setup? I have the gridlayout_v7 library project in the Android tab of my Eclipse project properties and the v.13 jar is on the build path. The XML layout that is failing is pasted below. I added the layout rows and columns explicitly in the image button tags in an effort to work around the problem. If anybody has a working example that runs on Android 2 with the support library, please share. ``` <android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:columnCount="2" android:rowCount="2" android:gravity="center_vertical" android:layout="@drawable/bg_test_main" > <ImageButton android:id="@+id/btnSentence" android:layout_row="0" android:layout_column="0" android:src="@drawable/testa_btn" android:contentDescription="@string/spin_fill_in" android:background="@android:color/transparent" /> <ImageButton android:id="@+id/btnAudio" android:layout_row="0" android:layout_column="1" android:src="@drawable/testb_btn" android:contentDescription="@string/audio_quiz" android:background="@android:color/transparent" /> <ImageButton android:id="@+id/btnPickWord" android:layout_row="1" android:layout_column="0" android:src="@drawable/testc_btn" android:background="@android:color/transparent" android:contentDescription="@string/def_pick_word" /> <ImageButton android:id="@+id/btnPickDef" android:layout_row="1" android:layout_column="1" android:src="@drawable/testd_btn" android:background="@android:color/transparent" android:contentDescription="@string/pick_def" /> </android.support.v7.widget.GridLayout> ```

Original source