現在、スクロール ビュー内にグリッドビューがあり、グリッド ビュー内に 2D 配列からの情報を表示してスクロール可能にしたいと考えています。後で他のレイアウトに使用したいので、このジョブを処理するための gridView 用のアダプターを作成しました。私が遭遇している問題は、配列の最初の行と 2 番目の行の一部のみがグリッド ビューに表示されていることです。私が作成したアダプターのコードは次のとおりです。問題はその中にあると感じています。
public class GridViewAdapter extends BaseAdapter
{
private Context context;
String[][] gridContent;
int rowPosition, columnPosition, count;
/**
*
*/
public GridViewAdapter(Context c, String[][] content)
{
// TODO Auto-generated constructor stub
context = c;
count = 0;
gridContent = new String[content.length][content[0].length];
for (int i = 0; i < gridContent.length; i++)
{
for (int j = 0; j < gridContent[i].length; j++)
{
gridContent[i][j] = content[i][j];
count++;
}
}
rowPosition = 0;
columnPosition = 0;
}
public int getCount()
{
return count;
}
public int getRowCount()
{
return gridContent.length;
}
public int getColumnCount()
{
return gridContent[0].length;
}
public Object getItem(int rowNum, int columnNum)
{
return gridContent[rowNum][columnNum];
}
public View getView(int position, View view, ViewGroup group)
{
TextView textView;
if (view == null)
{
textView = new TextView(context);
//textView.setPadding(8, 8, 8, 8);
}
else
{
textView = (TextView) view;
}
columnPosition = position % gridContent[0].length;
rowPosition = (position - columnPosition)/gridContent[0].length;
textView.setText(gridContent[rowPosition][columnPosition]);
//textView.setTextColor(000000);
//textView.setTextSize(13);
return textView;
}
public Object getItem(int position)
{
return null;
}
public long getItemId(int position)
{
return 0;
}
}
どんな助けでも大歓迎です。ありがとうございました
1行目と2行目の一部では完全に正常に機能するのに、なぜ途切れてしまうのかわかりません。スクロールビューとグリッドビューの xml コードは次のとおりです。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/verticalScrollView"
android:layout_width="fill_parent"
android:layout_height="400dp"
android:overScrollMode="always"
android:isScrollContainer="true"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:scrollbars="vertical"
android:layout_alignParentLeft="true"
android:layout_below="@+id/networkResults" >
<GridView
android:id="@+id/scheduleGrid"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:gravity="left"
android:horizontalSpacing="10dp"
android:isScrollContainer="true"
android:numColumns="5"
android:stretchMode="columnWidth"
android:verticalSpacing="10dp" >
</GridView>
</ScrollView>