android - 从 ListView 中删除一个项目并在每行中单击按钮刷新它

标签 android listview

嗨,我正在为这部分而苦苦挣扎。我只想在单击该行上的按钮时从 ListView 中删除一个项目。

我试过了

holder.button.setText("End");
holder.button.setTag(position);
holder.button.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        Integer index = (Integer) v.getTag();
        app_details.remove(index.intValue());
        notifyDataSetInvalidated();
    }
});

但它的行为是不可预测的,我的意思是当单击一行上的按钮时,它会从 ListView 中删除另一个项目。

有人知道吗?

谢谢

最佳答案

我遇到了同样的问题,终于解决了。必须尝试 holder.button.setOnItemClickListener 按照步骤做你想做的:

  1. 在您当前的 Activity 类中实现 OnItemClickListener
  2. 将从 ListView 中删除项目的按钮设置为setOnClickListener
  3. 将 ListView 设置为匿名内部类中的 setOnItemClickListener 监听器(例如,在 OnClickListener 中)。
  4. notifyDataSetChanged()
  5. 使用 Intent 再次调用此 Activity

例如:我采用一个 ListView listVw ->


holder.button.setText("End");
holder.button.setTag(position);
holder.button.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
       // your needed stuffs...
       listView.setOnItemClickListener(this);
    }
});

  @Override
    public void onItemClick(AdapterView arg0, View arg1, int position, long id) {
        // TODO Auto-generated method stub
        //Do your stuff here... 
    }

关于android - 从 ListView 中删除一个项目并在每行中单击按钮刷新它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8860453/

相关文章:

java - 将 iOS 应用程序转换为 Android 应用程序

c# - Windows Phone 8.1 listview 点击更改页面

android - 如何从 Listview 编辑文本字段中获取文本值......?

java - Android 使用 AsyncTask 连接 MySql 并以 JSON 或 String 的形式返回数据

android - 使用 Stock Android (Froyo) 时出现编译错误?

android - 应用程序因配置更改而崩溃

java - Android TextView 和 ListView 中可点击的按钮

listview - QML ListView 过滤项目

Android ListView 在不滚动 ListView 的情况下将项目添加到顶部

java - 如何在 OpenGL 中将纹理调整到正方形并居中?