在我的应用程序中,我有一个显示不同图片的gridview,我想知道如何使用if语句找出用户点击的图片。
gridView = (GridView) findViewById(R.id.gridView);
gridAdapter = new GridViewAdapter(this, R.layout.grid_item_layout, getData());
gridView.setAdapter(gridAdapter);
gridView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
ImageItem item = (ImageItem) parent.getItemAtPosition(position);
//this is where I want to check for it
if( )){
}
//Create intent
Intent intent = new Intent(MainActivity.this, DetailsActivity.class);
intent.putExtra("title", item.getTitle());
intent.putExtra("image", item.getImage());
finish();
//Start details activity
startActivity(intent);
}
});
答案 0 :(得分:1)
查看&#34; v&#34;将是用户点击的项目。您可以通过该对象引用获得所需的任何内容。
答案 1 :(得分:0)
使用ImageButton而不是使用ImageItem。它是一个按钮,但作为一个图像,所以你可以使用onClick上的常用按钮。
在这种情况下,您可以在获得按钮时立即设置onClick功能,但是您可以使用带有create table sample_data_s3 (id int, id bigint, val int, zerofill
string, name string, assertion boolean, city string, state string)
stored as parquet location 's3a://impala-demo/sample_data';
,View v
和经典代码的其他onClick功能。
switch(v.getId())
答案 2 :(得分:-1)
使用onTouchListener()
gridView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
// mouse left button pressed
break;
case MotionEvent.ACTION_UP:
// mouse left button pressed->non-pressed
// check processing..
break;
return false;
}
}
};