草庐IT

android - 我的 Android Listview 适配器中的 IndexOutOfBoundsException

我一直收到此IndexOutOfBoundsException,但似乎无法弄清楚是什么原因造成的。我的ListView有一个带有对象列表的适配器,并且根据时间戳删除对象。删除是在getView方法内部完成的。删除项目后,我调用notifyDataSetChanged()。github上提供了完整的源代码,这里是ListView适配器代码的链接:https://github.com/kenneho/run-for-the-bus/blob/master/app/src/main/java/net/kenneho/runnow/adapters/TravelsAdapter.java这是我

android - 如何将 setMultiChoiceItems() 与使用效率数组适配器的自定义 AlertDialog 一起使用?

我正在编写一个音乐播放器,它使用自定义适配器扩展BaseAdapter(效率适配器),我想使用setAdapter()在AlertDialog中显示用户可以要么单击其中一首歌曲以切换到播放列表中的该位置,要么选中要从播放列表中删除的歌曲。我尝试使用自定义点击监听器,以便用户只需长按即可从列表中删除该项目,但listview无法正常工作......它正在删除错误的项目(那些最后)即使ArrayList包含正确的播放列表项目...(当我从ArrayList中删除该项目时,我将它传递给了调用notifyDataSetChanged...但正如我提到的那样,它并没有起作用。AlertDialo

Android打开系统文件管理器,并获取选中文件的路径,适配Android10及以上无法获取路径

1.进入文件管理器privatevoidintoFileManager(){Intentintent=newIntent(Intent.ACTION_GET_CONTENT);intent.setType("*/*");//无类型限制//有类型限制是这样的://intent.setType(“image/*”);//选择图片//intent.setType(“audio/*”);//选择音频//intent.setType(“video/*”);//选择视频(mp43gp是android支持的视频格式)//intent.setType(“video/*;image/*”);//同时选择视频和图

Flutter层对于Android 13存储权限的适配问题

感觉很久没有写博客了,不对,的确是很久没有写博客了。原因我不怎么想说,玩物丧志了。后面渐渐要恢复之前的写作节奏。今天来聊聊我最近遇到的一个问题:Android13版本对于storage权限的控制问题。我们都知道,Android的每个版本更新都会伴随着搞事,也就是所谓的谷歌精英又会劝告我们来按照他们认为高效,他们认为优雅的方式来写代码,或者实现某些功能。所以在Android13版本中,他们就对我们非常常用的storage权限伸出魔爪了。我现在主要是开发面向海外的用户的2C应用,所以,不像国内一样,对于版本的需求可以说是非常严苛,然后这次谷歌就下了最后通牒,说如果应用不把TargetSDKVers

android - 适配器作为演示者?还是与 Presenter 交谈? Android 和 MVP

我正在尝试遵循MVP模式。但是,我对如何处理此模式的适配器和View持有者有一些疑问。我应该将适配器用作演示者吗?有业务逻辑?或者我应该传递一个处理列表逻辑的呈现器实例,然后在与适配器元素进行任何交互时调用呈现器的方法吗?谢谢 最佳答案 在Android中实现MVP没有准确/正确的定义为了回答您的问题,在我看来,Presenter不应该有任何Android逻辑。因此,Adapter将是一个“View”,即Presenter向它提供数据(通过Activity或fragment),它只是处理如何呈现这个。我会按照以下方式做MVP。模型-

带有动画的 Android Recycler View 适配器过滤器

我正在尝试优化Android中RecyclerViewAdapter的过滤方法。该列表用作ArrayList。我看过这个post但他们每次都从原始列表中过滤。示例:如果字符串“a”有10个结果,则用户输入“m”,“am”结果是“a”结果的子集(results.size()这个问题我想问三点,使用ArrayMap可以优化HashMap内存吗?我应该在String中使用逗号分隔位置而不是Integer对象数组还是使用int原始数组的任何方式?我在这个结果中没有得到任何动画,如何得到?(我正在使用notifyItemInserted仍然没有动画)Hashmap中应该保留多少数据,直到2个字符

android listview 滚动后显示错误数据(自定义适配器)

我遇到了一个让我发疯的奇怪问题。在我的android应用程序中,我自定义了我自己的适配器,它从ArrayAdapter扩展而来。我添加适配器的ListView的项目可以是标签文本(不可编辑)、可编辑文本或微调器。疯狂的事情是:当我滚动ListView时,有两个问题:(1)显示在微调项中的(选定的)值有时会更改,尽管我只是滚动!!当我点击微调器时,仍然显示旧的选定值(应该由微调器显示的那个)(2)当我滚动时,ListViewItems的顺序改变!=>但是adapter中的数据没有改变(数据本身和顺序都没有改变)——所以这一定是View本身的问题?!也许android在后台缓存并且没有足够

鸿蒙系统调研适配

写在前面:以下内容基于我个人翻阅的官方资料以及自己的理解写的,可能存在认知和理解上的偏差,有些地方并不一定是对的,请谨慎对待,注意甄别!一、鸿蒙OS是什么?华为推出的多端统一平台,可以运行在手机、平板、PC、电视(智慧屏)、音响、甚至是热水壶、洗衣机等设备上,通过鸿蒙系统,可以实现设备间的通信协同能力通过华为提供的studio,在创建应用时,指定应用的运行平台,studio会自动帮你集成此平台上所能调用的API等资源以上所有的统称,叫做鸿蒙OS,针对我们而言,需要关注的是鸿蒙应用的手机(平板)端的适配,以下内容均为手机、平板端的适配方案,不包含PC或者智能硬件上的方案二、鸿蒙OS包括哪些组件:

Android 使用游标适配器在 ListView 中保存复选框状态

在使用Cursor适配器时,我找不到保存复选框状态的方法。其他一切正常,但如果我点击一个复选框,它会在回收时重复。我看过使用数组适配器的示例,但由于我缺乏经验,我发现很难将其转换为使用游标适配器。有人可以给我一个如何去做的例子。任何帮助表示赞赏。privateclassPostImageAdapterextendsCursorAdapter{privatestaticfinalints=0;privateintlayout;Bitmapbm=null;privateStringPostNumber;TourDbAdaptermDbHelper;publicPostImageAdapte

关于安卓11 sdk30 分区存储的一些适配

App在使用存储功能时会遇到的问题,谨以拙笔助后至者targetsdk=29(安卓10)可以在清单文件中application标签加上android:requestLegacyExternalStorage=“true”禁用分区存储,就可以正常使用老存储功能了targetsdk≥30(安卓11+)此时禁用分区存储也没啥用了,强制开启分区存储适配访问应用专属目录(应用内部存储):应用专属目录位于/data/data/包名/下,可以直接访问。Filefile=newFile(getFilesDir(),"/test");if(!file.exists())file.mkdir();//getFil