0
我的應用程序從數據庫加載多篇文章,並將它們顯示爲網格視圖內的某種片段。我的問題是顯示在這個網格視圖中加載的每個片段。與我目前的實施,它只限於一個片段(總是最後一個添加)。我認爲它是因爲應該添加片段的行和列沒有定義。Android將多個片段添加到網格佈局
有沒有在這種情況下定義行和列的方法,或者最好自動填充網格?我一段時間以來一直困在這裏,還找不到解決方案。
法片段裝載到格:
private void loadFragmentsFromArticleList(List<DatabaseArticle> articles){
FragmentTransaction fragmentTransaction;
grid.removeAllViews();
for(DatabaseArticle a : articles){
fragmentTransaction = fragmentManager.beginTransaction();
CategoryButtonFragment fragment = CategoryButtonFragment.newInstance(a.getName(),"");
fragmentTransaction.add(R.id.gridButtons,fragment,null).commit();
}
}
網格XML
<GridLayout
android:id="@+id/gridButtons"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/btnDB"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/btnSearch"
android:columnCount="3"
android:orientation="horizontal"
android:animateLayoutChanges="true"
>
</GridLayout>
我理解這個理論,但是GridLayout沒有getViewAtPosition()方法? – TBrauwers
也許你可以使用getChildAt()而不是getViewAtPosition,它是從GridLayout的父類繼承的方法,即ViewGroup –
已經嘗試過,但不起作用。然而,我現在使用線性佈局解決了我的問題。我接受你答覆你的努力 – TBrauwers