我想要一個左側的垂直ListView和一個右側的GridView。兩者都由ArrayAdapters支持。我已經嘗試了RelativeLayout和LinearLayout,並且GridView甚至沒有調用適配器(除非垂直堆疊)。我把一個Log.v放在帶有父ID的適配器中來證明它。使用TableLayout,網格的適配器會設置字段,但網格仍不可見。這兩個視圖確實在其中顯示了相同的TextView項目。剩下的片段顯示正常。 ListView總是顯示。試圖在列表視圖旁顯示一個GridView。 GridView不顯示
的XML使用TableLayout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragment_course"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.hubbardsoftware.racetac.CourseActivityFragment"
tools:showIn="@layout/activity_course">
<fragment android:name="com.hubbardsoftware.racetac.TimerFragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:layout="@layout/fragment_timer" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff000000"
android:textStyle="bold"
android:text="@string/course"/>
<TableLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<TableRow>
<ListView
android:id="@+id/listview_course"
android:layout_column="1"
/>
<GridView
android:id="@+id/gridview_course"
android:layout_column="2"
android:numColumns="auto_fit"
android:stretchMode="none" />
</TableRow>
</TableLayout>
和碎片代碼:
// Setup the List of Marks in the course.
ArrayList<Mark> course = appData.getCourse();
ArrayList<Mark> marks = appData.getMarks();
Log.v(LOG_TAG, "Adapters: "+course.size()+" "+marks.size());
courseAdapter = new CourseAdapter(getActivity(), R.id.listview_course, R.layout.list_item_mark_name, course);
ListView listView = (ListView) rootView.findViewById(R.id.listview_course);
listView.setAdapter(courseAdapter);
// Setup the grid of Marks to choose from
marksAdapter = new CourseAdapter(getActivity(), R.id.gridview_course, R.layout.list_item_mark_name, marks);
GridView gridView = (GridView) rootView.findViewById(R.id.gridview_course);
gridView.setAdapter(marksAdapter);
這list_item_mark_name的佈局:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_item_mark_name_name"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:fontFamily="Roboto"
android:textStyle="bold"
android:textColor="#ff000000"
android:text="name"
/>
我可以讓他們垂直堆疊,或者甚至讓他們在同一個空間彼此重疊,但沒有並肩的歡樂。我已經廣泛地使用重量,相對定位(toRightOf等等),並且沒有去。
我也只是試圖給網格它自己的適配器,並創建另一個網格的不同名稱的TextView,無濟於事。
想法?謝謝!