ArrayAdapter:按索引删除

2024-01-18

我有一个 ListView,其中填充了新闻服务器概要(只是故事列表)和一个用于修改该 ListView 的 arrayAdapter。

我可以通过“remove(Object)”函数删除项目,但是如果有多个“Object”实例怎么办? remove() 仅删除了“Object”的第一个实例。例如,我无法在不删除第一个“对象”的情况下删除阵列适配器中的第二个“对象”。所以我的问题是我该如何解决这个问题?

例如:纲要 A

story 1 
story 2
Break
story 3
story 4
Break
story 5
etc...

所以在这个例子中我无法删除第二个“Break”,因为remove('Break')将删除第一个。如果我可以删除ByIndex(5),那将是完美的,但是......

我尝试编写自己的删除函数,该函数创建一个包含除指定索引之外的所有成员的全新适配器。这就是我正在搞乱的。

public ArrayAdapter<String> removeIndex(ArrayAdapter<String> arr, int index) {
    ArrayAdapter<String> temp = new ArrayAdapter<String>(arr.getContext(),R.layout.list_item);
    for(int i =0 ; i<arr.getCount();i++){
        if(i != index) temp.add(arr.getItem(i));
    }
    return temp;
}

感谢帮助或建议。


使用 List 自行处理字符串集合,并将对象传递到 ArrayAdapter 的构造函数中。这将为您提供对列表的引用,以便您可以更改数据,同时允许适配器根据需要进行管理和显示。

Note:修改数据对象时必须调用

myAdapter.notifyDataSetChanged()

之后 - 也必须在 UI 线程上。显然,对列表的更改不必在 UI 线程上进行,并且很可能应该发生not发生在 UI 线程上。

private ArrayList<String> mData = new ArrayList<String>();
private ArrayAdapter<String> mAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // ...
    // Code that adds the strings
    // Create the list adapter
    mAdapter = new ArrayAdapter<String>(myActivity.this, android.R.layout.simple_list_item_1, mData);
}

private void removeItem(int index) {
    mData.removeAt(index);
    myActivity.this.runOnUiThread(new Runnable() {
        public void run() {
            mAdapter.notifyDataSetChanged();
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ArrayAdapter:按索引删除 的相关文章

  • 无法解析插件 Java Spring

    我正在使用 IntelliJ IDEA 并且我尝试通过 maven 安装依赖项 但它给了我这些错误 Cannot resolve plugin org apache maven plugins maven clean plugin 3 0
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • 如何使用InputConnectionWrapper?

    我有一个EditText 现在我想获取用户对此所做的所有更改EditText并在手动将它们插入之前使用它们EditText 我不希望用户直接更改中的文本EditText 这只能由我的代码完成 例如通过使用replace or setText
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • 字符串数组文本格式化

    我有这个字符串 String text Address 1 Street nr 45 Address 2 Street nr 67 Address 3 Street nr 56 n Phone number 000000000 稍后将被使用
  • Android访问远程SQL数据库

    我可以直接从 Android 程序访问远程 SQL 数据库 在网络服务器上 吗 即简单地打开包含所有必需参数的连接 然后执行 SQL 查询 这是一个私人程序 不对公众开放 仅在指定的手机上可用 因此我不担心第三方获得数据库访问权限 如果是这
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • Google App Engine 如何预编译 Java?

    App Engine 对应用程序的 Java 字节码使用 预编译 过程 以增强应用程序在 Java 运行时环境中的性能 预编译代码的功能与原始字节码相同 有没有详细的信息这是做什么的 我在一个中找到了这个谷歌群组消息 http groups
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 玩!框架:运行“h2-browser”可以运行,但网页不可用

    当我运行命令时activator h2 browser它会使用以下 url 打开浏览器 192 168 1 17 8082 但我得到 使用 Chrome 此网页无法使用 奇怪的是它以前确实有效 从那时起我唯一改变的是JAVA OPTS以启用
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 在 Maven 依赖项中指定 jar 和 test-jar 类型

    我有一个名为 commons 的项目 其中包含运行时和测试的常见内容 在主项目中 我添加了公共资源的依赖项
  • 实现滚动选择 ListView 中的项目

    我想使用 ListView 您可以在其中滚动列表来选择一个项目 它应该像一个 Seekbar 但拇指应该是固定的 并且您必须使用该栏来调整它 我面临的一个问题是 我不知道这种小部件是如何调用的 这使得我很难搜索 所以我制作了下面这张图片 以
  • 使用 JMF 创建 RTP 流时出现问题

    我正处于一个项目的早期阶段 需要使用 RTP 广播DataStream创建自MediaLocation 我正在遵循一些示例代码 该代码目前在rptManager initalize localAddress 出现错误 无法打开本地数据端口
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • java.lang.IllegalStateException:驱动程序可执行文件的路径必须由 webdriver.chrome.driver 系统属性设置 - Similiar 不回答

    尝试学习 Selenium 我打开了类似的问题 但似乎没有任何帮助 我的代码 package seleniumPractice import org openqa selenium WebDriver import org openqa s
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j

随机推荐

  • 同时从多个线程使用同一个 FluxSink 是否安全

    我认识一个Publisher不得同时发布 但如果我使用Flux create FluxSink 我可以安全地打电话吗FluxSink next同时 换句话说 Spring 是否具有内部魔力来确保事件的正确串行发布 即使FluxSink ne
  • 注意:未定义偏移:2 如何解决?

    我在第 11 行和第 12 行遇到了未定义的 offset 2 错误 这是第 6 15 行的代码 if isset POST submit surveyID POST surveyCategory for i 0 i
  • GDI+ 通用错误 ASP.NET MVC

    我遇到了 GDI 通用错误我已经尝试了每个人所说的方法 即确保包含正在读取的图像文件的文件夹 如下所示 public ImageResult ProfileAsset string profile int width int height
  • 如何处理 Last.FM 或 Wikipedia 等社区 URL 样式?

    我试图理解我应该如何与角色一起工作URLs 这是因为我正在构建一个网站 用户可以在其中存储内容并通过在URL 所以 像Wikipedia or Last FM网站 我在网站上看到 用户可以写类似的内容http it wikipedia or
  • 我必须使用哪个 Windows 注册表项来安装 Delphi Expert?

    我需要为 Delphi IDE 专家创建一个安装程序 所以我找到了这两个注册表项 HKEY CURRENT USER Software Embarcadero BDS x 0 Known IDE Packages HKEY CURRENT
  • pd.read_html() 导入列表而不是数据框

    I used pd read html 从网页导入表格 但 Python 不是将数据构建为数据帧 而是将其导入为列表 如何将数据导入为数据框 谢谢你 代码如下 import pandas as pd import html5lib url
  • 在 Haskell 类型类中记录选择器

    我想实施一个Type Class有几个默认方法 但我收到一个错误 我无法使用record selectors inside type classes定义 下面的代码基本上创建了type class它定义了add函数 它应该添加一个元素到re
  • 在 ubuntu 12.04 上编译和构建 qt4

    我正在尝试从源代码编译和构建 Qt 4 8 3 当我执行 configure 时 收到以下错误消息 configure 183 configure QMAKE CXX print substr 0 index 0 1 not found E
  • Magento 1.7 验证码模块

    在新的 Magento 版本中 系统 gt 配置 gt 客户配置 gt 验证码 中的验证码选项我创建了一个名为 Signmeup 的新表单 但它似乎不起作用 我无法让它显示 目前该块未显示在页面上 不是动态页面 具有核心法师启动的静态页面
  • 获取字符串形式的对象属性名称

    是否可以获取字符串形式的对象属性名称 person person first name Jack person last name Trades person address person address street Factory 1
  • 仅显示 0-90% 或 0-95% 百分位

    这是我的代码和绘图结果 由于一些异常值 x 轴很长 有没有一种简单的方法可以过滤df fooR 中仅 0 90 或 0 95 百分位数 以便我只能绘制正常值 谢谢 df lt read csv Downloads foo tsv sep t
  • PostgreSQL - 当 UPDATE 失败时返回行内容

    当使用 PostgreSQL 更新行时 通过 UPDATE 语句 可以使用以下命令取回修改后的行内容RETURNING 我想知道当更新因约束而失败时是否有任何方法可以获取未修改的行 例如 执行以下命令 使用RETURNING 不返回当前行值
  • 在 Windows 7 64 位上安装 Android SDK:“未找到 JDK”? [复制]

    这个问题在这里已经有答案了 可能的重复 Android SDK安装找不到JDK https stackoverflow com questions 4382178 android sdk installation doesnt find j
  • “文件指针”、“流”、“文件描述符”和...“文件”之间的区别?

    有一些相关的概念 即文件指针 stream and 文件描述符 我知道一个文件指针是一个指向数据类型的指针FILE 例如声明FILE h and struct FILE h 我认识一个文件描述符 is an int 例如成员 fileno
  • 联系人选择器查询是否需要 read_contacts 权限,具体取决于 Android 版本?

    我们一直在尝试使用 Android 联系人选择器 以允许用户在应用程序不需要 READ CONTACTS 权限的情况下选择联系人 以下意图似乎适用于 4 0 ICS 设备以及 2 3 3 模拟器 Intent contactPickerIn
  • /**在c++中是什么意思

    我试图在 c 中添加块注释 但我做了一个 type o 并写道 代替 我注意到里面的评论变成了粗体 有谁知道这意味着什么 这种形式的评论被使用Doxygen http www doxygen nl 该软件使人们能够生成源代码文档 请参阅网站
  • 如何从jsp/servlet发送电子邮件?

    如何从 JSP servlet 发送电子邮件 是否需要下载一些 jar 或者您可以在没有任何 jar 的情况下从 JSP servlet 发送电子邮件吗 我的 Java 代码会是什么样子 我的 HTML 代码会是什么样子 如果有的话 是否需
  • in_array() 性能优化

    我有以下条件 if in array needle haystack in array needle somePostfix haystack in array needle someOtherPostfix haystack and so
  • 使用键:值对填充选择框?

    我正在使用 jQuery 并让服务器代码返回以下值 0 SELECT ONE 1 VALUE1 2 VALUE2 etc 如何将其填充到选择框中 var 0 SELECT ONE 1 VALUE1 2 VALUE2 targetSelect
  • ArrayAdapter:按索引删除

    我有一个 ListView 其中填充了新闻服务器概要 只是故事列表 和一个用于修改该 ListView 的 arrayAdapter 我可以通过 remove Object 函数删除项目 但是如果有多个 Object 实例怎么办 remov