編集:
EditText に書き込めません。データを変更すると getView() が呼び出されるため、何かを書き込もうとすると消えます
SQLite からいくつかのデータをロードし、ListView または Grid にリストする必要があります。次に、インライン編集機能を提供します。つまり、ユーザーはその ListView OR グリッド内でもデータを編集できます。
現在、この目的のために ListView を使用しています。私が行ったことは、行アイテムのレイアウトを定義したことです。サンプル xml を以下に示します。
行項目.xml
<TableRow
android:id="@+id/tableRow1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="1">
<TextView
android:text=""
android:id="@+id/txtQuestionId"
android:layout_width="100dp"
android:layout_height="50dp"
android:clickable="true"
android:padding="5dip"
android:gravity="left"
android:background="@android:color/transparent"/>
<EditText
android:text=""
android:id="@+id/txtQuestion"
android:layout_width="400dp"
android:layout_height="50dp"
android:clickable="true"
android:padding="3dip"
android:gravity="left"
/>
<TextView
android:text=""
android:id="@+id/txtStandard"
android:layout_width="200dp"
android:layout_height="50dp"
android:padding="5dip"
android:gravity="left"/>
<RadioGroup android:id="@+id/rdbStatus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" android:weightSum="1">
<RadioButton android:id="@+id/rbSAT"
android:layout_width="wrap_content" android:text="SAT"
android:layout_height="wrap_content"
android:onClick="onStatusClicked"/>
<RadioButton android:id="@+id/rbUNSAT"
android:layout_width="wrap_content" android:text="UNSAT"
android:layout_height="wrap_content"
android:onClick="onStatusClicked"/>
<RadioButton android:id="@+id/rbNA"
android:layout_width="wrap_content" android:text="NA"
android:layout_height="wrap_content"
android:onClick="onStatusClicked"/>
</RadioGroup>
</TableRow>
<!-- just draw a red line -->
<View
android:layout_height="2dip"
android:background="#FF0000" />
</TableLayout>
SQLite からデータを取得しています & カスタム DataAdapter クラスを使用してデータを ListView にバインドします。
いくつか質問があります:
1- Android でのインライン編集のベスト プラクティスは何ですか?
2- ListView または Grid のインライン編集に最適なオプションは何ですか?
3- インライン編集に ListView を使用する利点と利点は何ですか?
まことにありがとうございます。