解决-Android: ListView.setSelection无效

Android使用反射机制设置RecyclerView的默认焦点与TV端设置焦点 阅读详情

现象

我调用了ListView的setSelection方法,想让选择的Item显示在界面上。但是发现调用了却没有效果。

产生原因

在notifyDataSetChanged 后直接调用了ListView.setSelection(int position)方法

解决办法

不直接调用setSelection方法,而是post到队列中执行。如果ListView的刷新还没有完成,直接就调用setSelection,就会导致无效。

		
        listView.post(new Runnable() {
            @Override
            public void run() {
                listView.setSelection(position);
            }
        });
解决listview setSelection不生效问题 解决listview setSelection不生效问题之前有个需求要实现这么一个功能,进入到一个有listview的页面,然后自动定位到某个item.listview有提供一个api就是setSelection来实现跳转到某个ITEM,开始以为这个实现挺简单的,但是尝试了之后发现直接setSelection没有起作用。后来查了下资料发现,这个方法只有在listvie完成数据加载之后调用才会生效。 阅读详情

相关推荐

RDP Wrapper失效了?别慌!教你如何手动为Windows 10/11最新版本添加rdpwrap.ini配置

本文详细介绍了当RDP Wrapper在Windows 10/11最新版本中失效时,如何手动添加rdpwrap.ini配置以恢复多用户远程桌面功能。通过获取最新配置文件、安全替换配置的完整流程以及高级手动配置技巧,帮助用户解决[Not support]问题,确保远程工作流程不受系统更新影响。

weixin_30765577的博客 626

android的listview中setselection()不起作用的解决方案

遇到一个很奇怪的问题,感觉万能的listview.setselection()不起作用,

u010035154的专栏 2930

告别PS串口焦虑:深入解析AXI Uartlite IP核如何将ZYNQ PL任意引脚变成串口(从Vivado约束到驱动文件全解析)

本文深入解析AXI Uartlite IP核如何将ZYNQ PL任意引脚变成串口,从Vivado约束到驱动文件全解析。通过AXI Uartlite IP核,开发者可以突破PS端UART数量限制,实现高效串口通信。文章详细介绍了IP核架构、Vivado工程配置、驱动开发及调试技巧,帮助开发者快速掌握这一技术。

weixin_33736649的博客 468

setSelection不起作用的原因和解决办法

setSelection不起作用的原因和解决办法

先疯盗骨 8981

全桥LLC谐振变换器变频控制工作原理与仿真

全桥LLC谐振变换器以其效率高、全范围软开关、器件电应力小等优点,越来越多地应用于大功率场合。电力电子技术的发展日益追求高频化,所带来的问题是半导体开关器件高频运行时的开关损耗急剧增加。各种软开关电路随之出现。可以有效减小开关损耗,使进一步提高开关频率成为可能。谐振式开关因其可在电流自然过零点开通半导体器件,实现零电压开关,特别适合采用MOSFET作开关的装置。最简单的谐振电路有串联谐振(SRC)和并联谐振(PRC)。SRC只能工作于降压状态,应用受限;

晞子的技术札记 3080

从问卷到结论:手把手教你用SPSS 28完成一份完整的社科数据分析报告

本文详细介绍了如何使用SPSS 28完成社会科学研究中的数据分析报告,从问卷数据导入、清洗到描述性和推断性统计分析,再到结果呈现与报告撰写。通过实际案例演示,帮助研究者掌握SPSS 28的核心功能,提升数据分析效率与报告质量。

weixin_28717431的博客 249

android listview setselection 无效,为什么ListView的setSelection无效了?

官方文档的描述,public voidsetSelection(int position)Sets the currently selected item. If in touch mode, the item will not be selected but it will still be positioned appropriately. If the specified selecti...

weixin_34006872的博客 678

Quantum Espresso Hands-On实战训练(四)——PDOS计算与轨道分析

本文详细介绍了Quantum Espresso中PDOS计算与轨道分析的实战方法,重点解析了PDOS在材料电子结构研究中的核心价值,包括原子级分辨率、轨道级解析和自旋极化分析。通过具体案例和操作步骤,帮助读者掌握从输入文件准备到结果解读的全流程,并提供了高级分析技巧和疑难问题解决方案。

weixin_29211309的博客 504

android listview setselection 失效解决办法

listview.requestFocus(); listview.setItemChecked(i, true); listview.setSelection(i); listview.smoothScrollToPosition(i);

rougker的专栏 1万+

转录组数据提取技巧汇总

数据整理是数据分析的前提,而数据的正确提取则是数据整理的前提。

zfyyzhys的博客 1784

Python Selenium调用IE11报错全解析:从环境配置到稳定运行

在Web自动化测试领域,Selenium作为主流的跨浏览器测试框架,其核心原理是通过WebDriver协议与不同浏览器的驱动程序进行通信,实现对浏览器行为的模拟与控制。这一技术为软件测试的自动化、回归测试的效率提升提供了重要价值,广泛应用于金融、政务等对遗留系统兼容性要求高的行业场景。然而,当技术栈涉及过时的浏览器如IE11时,环境配置的复杂性显著增加,特别是Python与Selenium的组合常遭遇驱动兼容性、安全设置等挑战。本文聚焦于解决Python Selenium驱动IE11时的典型报错问题,深入剖

weixin_28834765的博客 323

处理ListView的setSelection方法不起作用的bug

ListView的setSelection方法   参数传入一个int类型的position  作用是将你传入的positon的条目滚动到第一条   即最上方      项目需求里有个选择城市的需求  listView展示城市  然后最右边有一排abcd...选择城市首字母  跳到首字母为选择的字母那里去  调用了这个方法  但是有时候生效有时候不生效     网上的原因大概是因为listVi

you_everything的博客 1206

ABAP Cloud 里的高性能日志:CL_BALI_LOG、XCO_CP_BAL 与 AML 的性能对比与选型指南

ABAP日志框架性能对比与选型建议 本文对比了ABAP Cloud中三种主流日志框架的性能表现与适用场景: 标准BALI:适合明确需要保存日志的场景,保存路径短,性能较好 XCO_CP_BAL:API更现代但性能较低,适合需要即时可见性的场景 AML:开源框架,擅长消息缓冲,适合批量处理时暂存消息 测试结果表明: 纯记录不落库时AML最快 需要保存时BALI性能最优 second connection不提升性能但能确保日志留存 选型建议: 高频批处理优先AML+BALI组合 故障诊断考虑XCO的即时可见性

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 215

关于BUG的那些事儿-ListView的setSelection()无效

解决ListView的setSelection()无效的方案有: 1、 代码: ListView.setItemChecked(int position, boolean checked); 解释: Ensure that the listview is set to CHOICE_MODE_SINGLE in the layout XML or in the java via: myL

chaozhouzhang的专栏 695

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

ListView setSelection 无效问题

一、api /** * Sets the currently selected item. If in touch mode, the item will not be selected * but it will still be positioned appropriately. If the specified selection position * is

zyw19871007的专栏 2567

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Android ListView setSelection用法

setSelection可以让ListView跳转到某个item显示(无滑动效果) 以下实例代码简单演示了一个ListView,当点击第一个item列表会跳转到最后一个显示 当点击最后一个item列表会跳转到第一个item显示 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http:...

野猿新一 1946

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Android 中 ListView 的 setSelection 无效怎么办?

2019-09-30 关键字:ListView 自动选中、ListView 动态改变选中项背景 ListView 在手动选中选项的时候该选项是会高亮以示选中状态的。但有的时候我们往往会想在 ListView 一加载完成的时候即自动选中指定的某个选项,它虽然有提供一个 setSelection(int position) 方法,但遗憾的是该方法在 ListView 加载完成的...

anxian8397的博客 594

android listview setselection 无效,解决 listview 人工设置选择值 setSelection(position) 无效...

貌似 人工设置 Listview中某一项为 选中, 使用setSelection(position)无效。查了一下, 需要在 适配器里解决package zms.zte2014.mydrawlayout1.myadapter;import java.util.List;import zms.zte2014.mydrawlayout1.R;import zms.zte2014.mydrawlay...

weixin_33315387的博客 549

android listview setselection 无效,Android ListView setSelection()似乎不工作

也许你需要使用function:ListView.setItemChecked(int position, boolean checked);在调用setSelection()方法之前使用requestFocusFromTouch()我知道这是一个古老的问题,但我有一个类似的问题,我以这种方式解决:mListView.clearFocus(); mListView.post(new Runnabl...

weixin_30120123的博客 479

android listview setselection 无效,Android ListView setSelection()似乎不起作用

I have a ListActivity that implements onListItemClick() and calls a doSomething() function of the class. The latter contains l.setSelection(position) where l is the ListView object.我有一個ListActivity實現o...

weixin_39832348的博客 380

【移动开发】ListView的setSelection()和setSelectionFromTop()联系

通常,app中的数据都是以ListView的形式展示的。默认地,把“新”数据添加到数据列表的尾部。 但是,如果是IM类型的app,比如查看历史消息这个模块。新数据并不是插到数据列表的尾部,而是插到数据列表的头部。 要实现比较好的用户体验,需要保持当前的ListView的位置。换句话说,如果我们能够随心所欲地指定ListView滚动的位置,那么这个问题就迎刃而解。 在ListView中,有一个setSelectionFromTop()方法,下面是一个使用范例。代码如下:

博客 6万+

ListView的setItemChecked()或者setSelection()无效是怎么回事?

今天在看android sample中NotePad的代码,突然想给NotesList中的list item添加一个单选效果: setListAdapter(adapter); getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); 主要是设置ChoiceMode,然后在item click监听事件中添加如下代码: @Overrid

夏商周 6761

为什么ListView的setSelection无效了?

原因一:界面初始化完成之后listview失去了焦点。 原因二:因为listview的item高度不一致,或者添加了headerview,在setadapter之后调用setSelection无法准确定位。 万能解决方法: final ListView listView = new ListView(getActivity()); listView.post(new Runnable() {

BingShuShu的专栏 1万+

ListView设置setSelection无效的解决方案

ListView设置setSelection无效的解决方案

madreain的博客 1336
上一篇: Android-AIUI技能设计技巧及处理策略总结
下一篇: 解决-Android: io.objectbox.exception.DbException
Huang-Lin
博客等级 码龄10年 20粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值