2
私はArrayAdapterを持つGridViewを持っています。コンテキストアイテムの選択を検出し、選択したオブジェクトを削除するための "Delete"オプションを表示したいと思います。私はimageviewsでグリッドを塗りつぶすだけで、削除嘆願を検出する必要があります。私のコード:メソッドで選択されたGridViewアイテムを検出するonContextItemSelected
ArrayList<MyClass> array;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.maingrid);
array=Manager.getMyArray();
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new mArrayAdapter(this,array));
registerForContextMenu(gridview);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.add(0, DELETE_ID, 0 , R.string.delete);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()) {
case DELETE_ID:
return true;
}
return super.onContextItemSelected(item);
}
削除する必要がある配列の要素はどのように推測できますか?あなたはこのような選択されたアイテムを取得することができます
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
:おかげonContextItemSelected
で