gpt4 book ai didi

android - 单击 ArrayAdapter 中的图像以删除 ListView 中的项目

转载 作者:行者123 更新时间:2023-11-29 01:35:07 24 4
gpt4 key购买 nike

我有 fragment ...

    public class MyFragment extends Fragment {...

调用适配器...

    MyArrayAdapter adapter = new MyArrayAdapter...
my.setAdapter(adapter);

适配器有删除项目的图像。我可以听到图像点击,但无法从 fragment 中的 ListView 中删除项目。

public class MyArrayAdapter extends ArrayAdapter<String> {...

public View getView(final int position, View convertView, ViewGroup parent) {...

ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// ???????????
...}

最佳答案

因为您的点击发生在 OnClickListener 内部类中,您必须指定 MyArrayAdapter.this 才能从点击监听器内部访问适配器的功能。如果您只使用 this,您将引用 OnClickListener,并且只能访问该类的方法。

像这样:

public View getView(final int position, View convertView, ViewGroup parent) {

ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
MyArrayAdapter.this.remove(getItem(position));
MyArrayAdapter.this.notifyDataSetChanged();
}
}

关于android - 单击 ArrayAdapter 中的图像以删除 ListView 中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28773315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com