Androidにこれがあるかどうか、またはそうする方法があるかどうかはわかりません。私はドキュメントを見ましたが、この用途のために特別に何も見ていません。役に立つかもしれない好ましい方法はありますか?どんな助けでも大歓迎です。
TextViewメンバーのアジェンダリストに必要です。しかし、ユーザーが1つをクリックすると、そのアジェンダ情報にアクセスする方法が必要です。たとえば、データベースからIDを保存してそのイベント情報を参照するのと同じように、ユーザーには非表示にする必要があります。
Androidにこれがあるかどうか、またはそうする方法があるかどうかはわかりません。私はドキュメントを見ましたが、この用途のために特別に何も見ていません。役に立つかもしれない好ましい方法はありますか?どんな助けでも大歓迎です。
TextViewメンバーのアジェンダリストに必要です。しかし、ユーザーが1つをクリックすると、そのアジェンダ情報にアクセスする方法が必要です。たとえば、データベースからIDを保存してそのイベント情報を参照するのと同じように、ユーザーには非表示にする必要があります。
とを使用するsetTag()
とgetTag()
、好きなタイプのオブジェクトを渡すことができます。
これがリファレンスです。
コメントから追加
1つのカーソルですべてを保持するよりも、データベースを数回クエリするのが最も簡単だと思います。
たとえば、次のような列を持つテーブルがある場合:events(_id, name, startTime, endTime, people, etc)
。電話をかけることもできますSELECT * FROM events
が、1つか2つのイベントの詳細だけが必要な場合は、それは過剰に思えます。SELECT _id, name FROM events
これをクエリしてListViewに保存する方が理にかなっています。次に、次のことができます。
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
detailCursor = database.rawQuery(`SELECT * FROM events WHERE _id = ?`, new String[] { id });
// Display this event's details somehow
}
}
このようなセカンダリカーソルは最も単純です。使用済みイベントの詳細にメモリを割り当てず、これらの繰り返されるマイナークエリによるパフォーマンスの大幅な低下はありません。このような場合、ビューのタグには何も保存しません。一般カーソル(すべてのイベントのIDと名前)と詳細カーソルで、必要なものがすべて表示されます。
お役に立てば幸いです。