问题标签 [android-adapter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 将项目添加到 ListView 而不重新加载
我想知道是否有办法将项目添加到 ListView 而不会导致重新加载整个列表。
我有一个 BaseAdapter 派生的 ListView 适配器,当底层模型添加了一个新元素时,它会调用 notifyDataSetChanged(),这会触发 ListView 重新加载。
列表中的元素具有图像,这些图像根据元素的内容动态加载。问题是,在重新加载过程中调用 getView() 时,传递用于重用的 convertView 参数来自之前不同的位置,因此图像也必须重新加载,这会导致相当难看的闪烁。
那么,如果我只在最后添加一个项目(这将是添加新项目的唯一方法),有没有办法不重新加载整个列表?或者,如果可能的话,至少以某种方式重复使用相同位置的单元格,以避免代价高昂的图像重新加载?
android - 如何在 Android 中将项目 ID 分配给 Spinner 的适配器?
我需要将某些类型标识符映射到我Spinner
的适配器。
我已将类型标识符定义为常量:
现在,我怎样才能知道在微调器中选择了哪种类型?什么样的SpinnerAdapter
工具适合这项工作?
android - GrivView BaseAdapter 中的绝对位置
我正在尝试写信BaseAdapter
给我GrivView
,但在
position
渲染下一个元素的同时是:
真正的地方是:
我知道这是正确的行为(它只计算可见元素),但是如何获取列表中项目的实际位置?或者如何知道我应该返回哪个布局?
编辑:但是返回的数字比我显示的随机得多,即使在屏幕上也是如此。
android - How to update SQLite database from listview using adapter in Android?
I have a settings menu in my application. When I click Menu button, I can click on settings icon and setting activity appears. Settings layout contains a listview, each list view item consists of textview (description of setting) and edittext (setting data). I store the data in settings table in SQLite database and add all of the settings to an adapter (ListAdapter) and listView like this:
As you see I can change the setting data. My question is, how can I update the database when I have changed the text in any of the edittext elements? I also have Save button in Settings layout and I want that clicking on it would update the database. I hope there is a simple way to do it.
android - 如何从表中获取_id字段并将其放入ListView
我在这里有点困惑。
这基本上向我显示了一个带有日期和描述但没有 id 的 ListView(我只是用空格代替 id)。_id 字段是主键,它是一个整数。
看看它在 img 上的样子
XML 文件:
创建表查询:
android - Android - CustomCursorAdapter 和 ListView 中的 getView()?
我已经在 StackOverflow 和其他网站上阅读了多个(实际上是很多)关于制作 CustomCursorAdapter 时要覆盖哪些方法的问题,但我仍然不明白。
有人说 getView() 直接委托给 newView() 和 bindView(),因此在 CursorAdapter 中是不必要的。但是,似乎使用 getView() 方法是合并 ViewHolder 的唯一方法。
我的意图是在我的 ListView 的每一行中放置一个 CheckBox,但我不确定如何处理视图回收。
有人可以为我澄清一下吗?提前致谢。
android - 在“适配器”上使用两个(或更多)父视图?
ArrayAdapter<ownDataType>
是否可以使用一个适配器类(及其实例)(例如,两个(或更多)不同视图的自己的子类?
在我的Activity
中,我有两个Spinner
对象用于显示(和选择)相关数据:父类别列表和所选父类别的子类别列表。当然,当父类别更改时,子类别中的列表Spinner
会更新(设置一个新的)。ArrayAdapter
但是,我也希望能够在创建 Activity 时直接设置子类别(并自动选择父类别)。这使事情变得复杂。
我现在对一个简单而干净的解决方案的想法是创建一个自己的适配器类(例如,派生自ArrayAdapter<CategoryPair>
,其中CategoryPair
是一个包含一对父类和子类的简单类)并且这个自己的适配器类处理所有逻辑以保持数据一致(那里简单得多)。
在 -class 的getView(int position, View convertView, ViewGroup parent)
方法中,Adapter
我需要可靠地识别我需要为Spinner
我的活动中的两个对象中的哪一个创建视图。
我可以依赖parent
参数吗?
你觉得我的想法好不好?
编辑:代码示例:
我的适配器类:
java - 在 JSON 填充的 android 视图中单击的复选框列表
从 JSON 解析后,我正在生成一个复选框列表。当按下提交按钮时,我想知道选中了哪些所有框。我该怎么做呢 ?
我的 xml 代码(省略了非常明显的东西,如高度、宽度、xmlns 等):
此 java 片段填充数据并将文本添加到相邻的 TextView
Onsubmit,我如何识别一个复选框?
android - 当屏幕方向改变时,ListView 在列表中添加了重复项
我试图创建列表视图,但在方向改变时会遇到一些问题。问题是:当我改变屏幕列表视图的方向时,在列表中添加重复的列表项。如何限制此数据更改
代码是:
列表适配器:
android - 从 ListAdapter 获取缓存视图
当列表显示并滚动时,ListAdapter.getView() 要么创建一个新的列表项视图,要么重新调整传递给它的现有视图(作为“convertView”)以显示新内容。
我想知道,是否有办法获取由 getView() 创建的所有视图?例如,如果列表项视图需要在 Activity 被销毁时释放一些资源,最好遍历所有列表项视图并告诉它们释放资源。