我正在用java开发androidstudio。
我在gridview中有很多imageview。我正在尝试应用同时影响多个imageview的click事件
我想做的是:当一个imageview被单击时,另一个imageview没有被单击以更改其图像。
例如,在同一个gridview中有两个imageview a和b。如果单击一个imageview,则a和b imageview都将设置为不同的imagesources。
我能做的就是只更改单击的imageview。我想知道如何在gridview中访问未选中的项目。我在适配器内制作了onclick监听器。
public View getView(int position, View convertView, ViewGroup parent) {
convertView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.ingrid,parent,false);
ImageView blackorwhite = convertView.findViewById(R.id.blackOrWhite);
Integer val = mData.get(position);
blackorwhite.setImageResource(blockColor.get(val));
blackorwhite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
blackorwhite.setImageResource(R.color.white);
}
});
1条答案
按热度按时间bejyjqdl1#
你可以做一个接口回调来知道哪个项目被点击,例如这是你的接口
并将此接口传递给我们的适配器,在getview方法中,每当单击视图时,都可以调用接口的onclick方法
这是示例代码
要启动适配器,你可以使用这个代码,