如何单击 GridView 中单个项目的特定部分?

How do I click a specific part of a single item in a GridView?

我的 GridView 中的每个项目都是一个自定义布局,由四个 ImageView 组成,每个 ImageView 都有自己的 ID,每个 ImageView 都有一个由自定义 CursorAdapter 设置的图像。

我希望单击项目中的每个 ImageView 会导致不同的功能。我还想在函数中使用 GridView 项目的 ID。

如果我使用 gridview.setOnItemClickListener,它会查找对整个项目的点击。如果我在 XML 中使用 android:onClick,它不会给我项目的 ID。

在自定义适配器的getView方法中,为每个ImageView设置OnClickListener

imageView1 = rootView.findViewById(R.id.image1);
    imageView2 = rootView.findViewById(R.id.image2);

imageView1.setOnClickListener(...
imageView2.setOnClickListener(...

试试这个

your_grid_view.setOnItemClickListener(new AdapterView.OnItemClickListener() {
   @Override
   public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
     Toast.makeText(YourActivity.this, "" + position, Toast.LENGTH_SHORT).show(); // this will toast your clicked item position.
   }
});