私の Android アプリケーションには、表形式で表示されるいくつかのデータを含む画面があります。このテーブルには、約 5 列と少なくとも 50 行が含まれます。
Androidでテーブルを作成するにはどうすればよいですか?
私が検索したところ、各セルに TableLayout と textView を使用することを誰もが推奨しているようです。多くの textView コンポーネントがあるため、この手法を使用するのは少し難しいようです。
これに対する他の解決策はありますか?
私の Android アプリケーションには、表形式で表示されるいくつかのデータを含む画面があります。このテーブルには、約 5 列と少なくとも 50 行が含まれます。
Androidでテーブルを作成するにはどうすればよいですか?
私が検索したところ、各セルに TableLayout と textView を使用することを誰もが推奨しているようです。多くの textView コンポーネントがあるため、この手法を使用するのは少し難しいようです。
これに対する他の解決策はありますか?
TableLayout lTableLayout;
lTableLayout = (TableLayout)findViewById(R.id.tblayout);
for(int i=0;i<10;i++){
TableRow tr1 = new TableRow(this);
tr1.setPadding(0, 5, 0, 0);
lTableLayout.addView(tr1, LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
TextView tv11 = new TextView(this);
tv11.setPadding(2, 0, 0, 0);
tv11.setTextSize(12);
tr1.addView(tv11,LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); // Can give width and height in numbers also.
}
これらは、取得したテーブル レイアウトの各行に 10 行と 1 つのテキストビューを作成します。以下のように、xml ファイルで 1 つのテーブル レイアウトを使用します。
<TableLayout
android:id="@+id/tblayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</TableLayout>
カスタムアダプタでListViewを使用し、listviewアイテムに列として5つのtextviewを作成します。このrow.xmlのようなlistitemを作成します。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<TextView android:text="TextView" android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<TextView android:text="TextView" android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<TextView android:text="TextView" android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<TextView android:text="TextView" android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
</LinearLayout>
TableLayoutを使用する必要はありません。
カスタムListViewを使用して、ListViewのヘッダーを列名として設定できます
カスタムリストビューを作成するには、この例を参照してください