如何更新 ListView 中的单行?

2024-04-15

我有一个ListView显示新闻项目。它们包含图像、标题和一些文本。图像加载在一个单独的线程中(带有队列和所有),当下载图像时,我现在调用notifyDataSetChanged()在列表适配器上更新图像。这可行,但是getView()被调用太频繁,因为notifyDataSetChanged() calls getView()对于所有可见的项目。我只想更新列表中的单个项目。我该怎么做?

我当前的方法存在的问题是:

  1. 滚动速度很慢
  2. 我在图像上有一个淡入动画,每次加载列表中的单个新图像时都会发生该动画。

感谢米歇尔您的信息,我找到了答案。 您确实可以使用获得正确的视图View#getChildAt(int index)。问题是它从第一个可见项目开始计数。事实上,您只能获取可见的项目。你用以下方法解决这个问题ListView#getFirstVisiblePosition().

Example:

private void updateView(int index){
    View v = yourListView.getChildAt(index - 
        yourListView.getFirstVisiblePosition());

    if(v == null)
       return;

    TextView someText = (TextView) v.findViewById(R.id.sometextview);
    someText.setText("Hi! I updated you manually!");
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更新 ListView 中的单行? 的相关文章

  • 找不到参数的方法 dependencyResolutionManagement()

    我正在尝试使用老师给我的一个项目 但它显示了一个错误 Settings file Users admin AndroidStudioProjects HTTPNetworking settings gradle line 1 A probl
  • 卸载后 Web 应用程序不显示“添加到主屏幕”

    这是我第一次创建网络应用程序 我设法解决了这个问题 所以我得到了实际的 chrome 提示 将其添加到主屏幕 然后我从手机上卸载了该网络应用程序 因为我想将其展示给我的同事 但是 屏幕上不再出现提示 问题 这是有意为之的行为还是我的应用程序
  • 计数物体和更好的填充孔的方法

    我是 OpenCV 新手 正在尝试计算物体的数量在图像中 我在使用 MATLAB 图像处理工具箱之前已经完成了此操作 并在 OpenCV Android 中也采用了相同的方法 第一步是将图像转换为灰度 然后对其进行阈值计算 然后计算斑点的数
  • 找不到处理意图 com.instagram.share.ADD_TO_STORY 的活动

    在我们的 React Native 应用程序中 我们试图让用户根据视图 组件中的选择直接将特定图像共享到提要或故事 当我们尝试直接使用 com instagram share ADD TO FEED 进行共享时 它以一致的方式完美运行 但是
  • 是否必须删除 Intent extra?

    这可能是一个愚蠢的问题 但是是否有一条规则规定消费活动必须显式删除 Intent 额外内容 或者只有在回收 Intent 对象时才如此 换句话说 如果我总是通过执行以下操作来链接到下一个活动 Intent i new Intent MyCu
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助
  • 发布android后更改应用内购买项目的价格

    在 Google Play 上发布后 是否可以更改应用内购买商品的价格 我假设该应用程序也已发布 完整的在线文档位于http developer android com http developer android com也http sup
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 在 SQLite 中搜索时排除 HTML 标签和一些 UNICODE 字符

    更新 4 我已经成功运行了firstchar例如 但现在的问题是使用regex 即使包含头文件 它也无法识别regex操作员 有什么线索可以解决这个问题吗 更新 2 我已经编译了sqlite3我的项目中的库 我现在正在寻找任何人帮助我为我的
  • 如何发布Android .aar源以使Android Studio自动找到它们?

    我正在将库发布到内部 Sonatype Nexus 存储库 Android Studio 有一个功能 可以自动查找通过 gradle 引用的库的正确源 我将 aar 的源代码作为单独的 jar 发布到 Nexus 但 Android Stu
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • Android Studio 0.4.3 Eclipse项目没有gradle

    在此版本之前 在 Android Studio 中按原样打开 Eclipse 项目似乎很容易 无需任何转换 我更喜欢 Android Studio 环境 但我正在开发一个使用 eclipse 作为主要 IDE 的项目 我不想只为这个项目下载
  • 字符串数组文本格式化

    我有这个字符串 String text Address 1 Street nr 45 Address 2 Street nr 67 Address 3 Street nr 56 n Phone number 000000000 稍后将被使用
  • Android Studio - Windows 7 上的 Android SDK 问题

    我对 Google i o 2013 上发布的最新开发工具 Android Studio 有疑问 我已经成功安装了该程序并且能够正常启动 我可以导入现有项目并对其进行编辑 但是 当我尝试单击 SDK 管理器图标或 AVD 管理器图标时 或者
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 如何将 google+ 登录集成到我的 Android 应用程序中?

    大家好 实际上我需要通过我的应用程序从 google 登录人们 现在我阅读了 google 上的文档 其中指出 要允许用户登录 请将 Google Sign In 集成到您的应用中 初始化 GoogleApiClient 对象时 请求 PL
  • Crashlytics 出现 Android Studio 构建错误

    我正在尝试将 CrashLytics 与 Android Studio 和 gradle 一起使用 但出现一个令人困惑的错误 java lang NoSuchMethodError 我的 build gradle 是 buildscript
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview

随机推荐

  • Swagger UI 正在将请求中的协议从 https 更改为 http

    在 swaggerUI 中 默认采用 http 但实际 API 将支持 https 一种可能的方式 将删除架构中的 http 但在本地无法测试 https 那么这个问题的可能解决方案是什么 任何人有想法请帮助我找到它 只需将其放入您的文档中
  • 更改 Java/Swing 中的助记符修饰键

    在 Swing 中设置焦点热键非常简单 tfldPlantsNeeded new JTextField FIELD LEN MED lblPlantsNeeded new JLabel Plants Needed lblPlantsNeed
  • 使用apache poi检测Excel中的隐藏单元格

    我们使用 apache poi 3 8 来解析 Excel 我们需要能够检测 并跳过 隐藏行 因为它们在我们的用例中往往包含垃圾数据 看起来这应该有效 row isFormatted row getRowStyle getHidden 但似
  • 抑制 Access VBA 中的写入冲突消息

    我的问题 我编写了一个存储过程来计算通过 Ms Access 前端 到 MSSQL2000 数据库 上的表单呈现的多个字段 我一打电话表格重新查询获取更改后的值 我可以看到我引起了写冲突的恼人消息 自您开始编辑以来 该记录已被其他用户更改
  • Fortran 指针多态性

    我正在尝试使用指针在对象之间创建链接 使用 Fortran 下面是代码片段 module base pars module type abstract public base pars end type end module module
  • Tensorflow:裁剪图像的最大中心方形区域

    我的网络拍摄尺寸的图像100 x 100像素 因此 我必须调整不同大小的数据集图像的大小 我希望能够从给定图像中提取最大的中心正方形区域 然后将其大小调整为100 x 100 更准确地说 假设图像的宽度为200像素和高度50像素 然后我想提
  • jwt:为什么我的令牌显示在 Chrome DevTools 中?

    我在 Express js 中有一个 API 可以创建博客文章并将其添加到我的数据库中 当我从 DevTools 内的 React 应用程序发出请求时 它将显示我的 JWT 我担心当我的网站上线时 人们可以看到我的令牌并从他们的网站发出添加
  • GIT 和推送忽略的文件

    使用 git 时必须遵循的具体程序是什么 我将给出我的程序 不知何故 它工作得不太顺利 cloned a repository works fine added settings files to gitignore to prevent
  • IntelliJ 结构搜索和替换问题

    有没有一种简单的方法来捕获类型 我似乎无法做一些基本的事情 例如并排使用变量表达式 例如 mapType mapEnd 做一个简单的替换 这可能有什么原因吗 也就是说 如果我有一个表达式 比如 s abc 我把它分成两个变量 s and a
  • 受密码保护的 pdf 中密码字段不可见

    我正在使用 PDF 套件框架来显示 编辑 pdf 文件 它在 macOS 10 12 上严重损坏 有时受密码保护的文件不显示密码字段 有时密码字段在普通文件中可见 我可以使用未记录的 API 来修复此问题 它的问题与隐藏 取消隐藏密码视图有
  • javax.net.ssl.SSLException:SSLSocketFactory 为 null

    我的以下代码有问题 System setProperty javax net ssl keyStoreType pkcs12 System setProperty javax net ssl trustStoreType jks Syste
  • 从核心数据中获取子项总和

    假设我有三个实体 Person 姓名 地址 对多工资 和 对多贷款 Salary 收入 税 相对 对一个人 Bills数量 相对 对一个人 如何执行获取结果如下 John Doe SUM gt 收入 SUM gt 金额 Eva Doe SU
  • ES2015 (ES6) `class` 语法有什么好处?

    我对 ES6 类有很多疑问 使用有什么好处class句法 我读到 public private static 将成为 ES7 的一部分 这是一个原因吗 而且 是class一种不同类型的 OOP 或者它仍然是 JavaScript 的原型继承
  • Android 收到新电子邮件时如何执行一些代码?

    在 Android 中 当新电子邮件 gmail 到达时 如何执行一些代码 在 Android 中 当新电子邮件 gmail 到达时 如何执行一些代码 没有记录的广播Intents当 Gmail 到达时发送出去 Gmail 不是 Andro
  • 处理单数和复数控制器/路由

    我对如何在网络应用程序中处理单数和复数路由和控制器感到有点困惑 该网站是一个简单的报价网站 想想爱因斯坦 莎士比亚等 而不是保险 在项目中 我有一个名为 QuoteController 的控制器 控制器名称是单数 那么这是否意味着控制器应该
  • 检查 csv 列中除一项之外的所有项目 [python pandas]

    我试图弄清楚如何使用 python pandas 检查整个列以验证所有值都是整数 除了一个 一行名称始终有一个浮点数 CSV 示例 name num random1 2 random2 3 random3 2 89 random4 1 ra
  • 使用 Volley android 将发布数据发送到服务器

    我正在尝试使用 Volley 库向服务器发送一些数据 private void registerUser final String email final String username final String password Tag
  • Shadow dom 内的 FontAwesome svg

    我正在尝试在 Web 组件中使用 font Awesome js svg 库 但图标不会显示 这可能吗 我正在尝试在现有的 webforms 项目中实现一个角度组件 而无需 css 和脚本 流血 关于如何做到这一点还有其他建议吗 ifram
  • 如何使用 gtest 对 std::bind 函数进行单元测试?

    我正在尝试为项目中的一些 cpp 文件编写单元测试用例 这里的场景是 我有一个 cpp 文件 只定义了一个公共方法 然后又调用私有方法 这里私有方法在公共方法中作为回调方法被调用 我如何在这里测试私有方法 我将对回调指针进行模拟 但我不知道
  • 如何更新 ListView 中的单行?

    我有一个ListView显示新闻项目 它们包含图像 标题和一些文本 图像加载在一个单独的线程中 带有队列和所有 当下载图像时 我现在调用notifyDataSetChanged 在列表适配器上更新图像 这可行 但是getView 被调用太频