Android 是否提取通过gridView.setOnItemClick返回的长id的组件?
关于我最近的问题ArrayList和GridView的解决方案,long id保存数据库中1行的所有数据 在这种情况下,我需要的只是_ID和_数据。我假设在imageAdapter类中,getCursor.getInt0引用了_ID 列0和getCursor.getInt1指向_dataone,那么如何在gridView.setOnItemClick中引用它呢?毕竟Android 是否提取通过gridView.setOnItemClick返回的长id的组件?,android,Android,关于我最近的问题ArrayList和GridView的解决方案,long id保存数据库中1行的所有数据 在这种情况下,我需要的只是_ID和_数据。我假设在imageAdapter类中,getCursor.getInt0引用了_ID 列0和getCursor.getInt1指向_dataone,那么如何在gridView.setOnItemClick中引用它呢?毕竟 position提供单击的图像,因此id必须包含与其相关的内容。这是否取决于ImageAdapter类public long ge
position提供单击的图像,因此id必须包含与其相关的内容。这是否取决于ImageAdapter类public long getItemId中返回的值?在多次随机尝试后,问题已解决。调整ImageAdapter类,如下所示:
gridView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {
Toast.makeText(getBaseContext(), "Image" + position " selected", Toast.LENGTH_Short).show();
}
这将返回可在McClickListener中使用的正确值
public Object getItem(int position) {
getCursor.moveToPosition(position);
return getCursor.getString(1); //--- not default return position!
}
public long getItemId(int position) {
getCursor.moveToPosition(position);
id = getCursor.getLong(0);
return id;
}
那么mclick中返回的长id提供了什么呢
long column = myAdapter.getItemId(position); //--- long value of the _ID column.
String data = myAdapter.getItem(position); //--- String value of _DATA column.