我有一個GridView的一個奇怪的問題。該GridView控件與baseAdapter:onItemClick給錯了位置
onItemClick(適配器視圖父母,視圖V,INT位置,長ID)
方法有時給錯誤的位置。 代碼我有:
public class ImageAdapter extends BaseAdapter {
......
}
gridview = (GridView) findViewById(R.id.gridview);
image_adapter = new ImageAdapter(this);
gridview.setAdapter(image_adapter);
gridview.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
Log.e(TAG, "position = "+position);
}
}
我GRIDVIEW是3X3格和圖像適配器具有上的圖像9片。基於用戶選擇的網格位置,圖像塊被混洗。
如果選擇的網格位置將慢慢做這工作得很好。但是,如果用戶在任何特定位置上都快速點擊,onItemClick方法中的「位置」參數將被任意更改。 假如我的網格
0 1 2
3 4 5
6 7 8
和用戶不斷快步上5位攻,有時onItemClick「位置」參數讀數爲0或6
任何想法究竟是什麼原因什麼可能是解決方案?
我按照您的建議嘗試了OnItemSelectedListener。恐怕它不起作用。 – user556956