ContextMenu を使用しようとしています。SimpleCursorAdapter を使用して単純な ListActivity に対してこれを成功させました。
次に、SimpleCursorAdapter を CursorAdapter に置き換えたいが、ContextMenu の動作は保持したいので、bindView と newView の 2 つの必須オーバーライド関数を追加しました。
public View newView(Context context, Cursor cursor, ViewGroup parent) {
View view = mLayoutInflater.inflate(R.layout.check_row, parent, false);
registerForContextMenu(view);
return view;
}
ListActivity の onCreate メソッドで registerForContextMenu(getListView()) を置き換える registerForContextMenu に注意してください。onCreateContextMenu(...) への呼び出しを取得するには、これが必要であることがわかりました。
onCreateContextMenu(...) に指定された ContextMenuInfo パラメータを除いて、これはすべて機能します (予想されるウィジェットで作成された行、それらのコールバックなど)。
おそらく CursorAdapter の bindView(...) メソッドで実行する別のトリックはありますか?