问题标签 [convertview]

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.

0 投票
3 回答
1596 浏览

android - ConvertView 作为仍在屏幕上的视图传入

在我的自定义 ListAdapter 中,第一次调用 GetView() 时,convertView 作为 NULL 传入,但第二次作为第一次创建的视图传入。我的 ListView 有 4 行,所有 4 行同时在屏幕上。从文档来看,convertView 似乎应该是一个已经创建并且现在已经从屏幕上滚动出来的视图。我希望 convertView 全部 4 次都为空,这样它就会创建/膨胀 4 个单独的视图。第一次调用 getView 后我应该有一个 convertView 吗?谢谢。

在 OnCreate() 中:

适配器类

0 投票
1 回答
1378 浏览

android - Android,如何传递视图和视图组参数

我想在我的列表视图中更改我的一个视图的背景颜色

myListView.getView(int position, View convertView, ViewGroup parent).setBackgroundColor(0x00FFE303);

我知道位置是什么——这将是我的数组适配器索引,但我不知道视图和视图组是什么。我已在此行上方声明它们,但我不知道将它们初始化为什么

帮助?

0 投票
3 回答
9545 浏览

android - 即使视图存在,convertView 也作为 null 传递

我开发了一个 android 应用程序,其中图像和文本显示在网格视图中,当用户向下滚动时显示下一个十项(图像和文本)。在调用 adapter.notifyDataSetChanged() 之后调用适配器的 getView 方法时会出现问题。适配器回收数据,但位置在网格视图中重新排列和重复。在我添加条件以检查 convertView 是否为空之前,我没有遇到过这个问题。

活动课:

在滚动网格视图正确显示之前。日志 :

滚动第一次结束后

但网格显示重复值,而不是按应有的顺序显示。对不起,我是新用户,不允许发布图片。

在日志中,我看到位置 0 convertView==null 为真。

如何设置正确,因为我计划下载图像以代替当前使用的图像视图的 android 图标。

请帮忙。

0 投票
0 回答
442 浏览

android - 适配器视图和转换视图中的适配器视图

我有一个适配器视图(列表视图),每个视图都包含一些视图,包括另一个适配器视图(自定义水平列表视图)

所有转换视图看起来都很好,当我垂直滚动时,我从列表视图的适配器转换,当我水平滚动时,我从水平列表视图转换。

我的问题是当我在 listview 上调用 setNotifydatasetChanged 时,它会从 convertview 重绘所有子行,但每个水平 listview 的子行都会得到一个空的转换视图。

因此它会重建每个水平列表视图中的每个项目。

我可以通过为每个 listview 行存储自己〜 15 个视图而不是依赖于 convertview 来避免这种情况,但它非常难看。

你知道更好的吗?

谢谢。

0 投票
3 回答
3841 浏览

android - 图库 ImageAdapter convertView 始终为空

我正在使用带有 ImageAdapter 的 Gallery 来使用 ImageViews 加载它,从而从我的资源中提取图像。我的问题是,在我的适配器中传递给 getView() 方法的 convertView 始终为空。这意味着每次调用 getView() 时都会创建一个新的 ImageView。这会导致可怕的性能,因为 GC 不断运行以清除所有这些已创建且不再使用的 ImageView。

这显然是一个已知的错误:Gallery 的视图缓存已损坏;从不转换视图。.

我的两个首选解决方案是 1. 在适配器本身中处理视图缓存并处理正确重用它们所需的所有逻辑。或 2. 包含我自己的 Gallery 小部件副本并尝试修复它,以便正确返回回收视图。

我已经开始实施选项一,但很快意识到我并不完全知道如何制作该操作背后的所有逻辑。我开始认为选项二可能更容易。

我在这里找到了 Gallery 小部件的代码:http: //grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.1_r2/android/widget/Gallery.java

我不完全理解它,但我可以看到它正在调用

在第 745 行。我(在黑暗中拍摄)猜测这是问题的根源。

有没有人有这个错误的经验。或者任何人都可以指出我正确的方向来弄清楚回收商的情况是如何工作的,以便我可以调整这个小部件以使其正常工作?甚至建议一些我可能忽略的替代选项。

编辑:我发现的最好的解决方案是一个名为 EcoGallery 的实现。我唯一能在网上找到参考的地方就是这里。为了让它工作,您必须将每个块从那里放在项目中的正确位置。

0 投票
4 回答
1350 浏览

android - 使用 convertView 时出现问题,不使用时出现问题

我有一个包含 ImageView 和 TextView 的 ListView。我正在对 ArrayAdapter 进行子类化,以便可以通过子类化的 AsyncTask 从 Internet 加载图像。到目前为止一切都很好。

问题是,如果我尝试使用 convertView,我会遇到图像被短暂回收到错误行的问题。(这是一家公司的标志,所以这……不好。)

但是,如果我不使用 convertView,则用户滚动时图像会丢失。因此,如果他们向下滚动并向后滚动,则从互联网重新加载图像(这显然不利于数据使用、电池寿命等)

有没有一种简单的方法来解决这个问题,这样它就不会每次都从互联网加载,或者移动图像?

这是我目前使用的:

非常感谢所有帮助:)

0 投票
0 回答
367 浏览

android - 使用 convertview 时 Listview 以错误的顺序返回项目

当我使用convertView它时,它会返回错误的视图项。它返回正确的对象,应该在这个位置。但回报wrong view

这是我的来源。我在下载文件时正在检索Capsule objectarray更新。ProgressBar除了订单,它工作得很好。当我评论部分convertView一切顺利时。

0 投票
1 回答
406 浏览

android - Android:我应该使用 ListView 吗?(案例:列出结构部分未知的元素)

关于列表的假设(更新):

  • 不会包含超过10 个列表元素(列表元素由下面的 xml 布局定义)。
  • 每个元素的高度是未知的,因为列表元素包含一个LinearLayout最多可以有20 个子视图的元素(参见下面的 xml)。

列表元素的 XML 布局:

问题:

  • ListView将 a用于在其结构中具有如此自由度的布局(如上面的那个)并且仍然能够使用
    传入的 convertView是否有意义ListView#getView(...)
  • 作为替代方案,将所有列表元素放在外部
    LinearLayout并将其放在 a中会不会是错误的ScrollView?通过这样做,我不会获得 的缓存能力ListView,但考虑到关于列表的假设,它可能不会那么重?(见顶部)。(有关如何使这种替代外观和感觉像的任何指示ListView?我正在考虑应用标准颜色和选择器等)
0 投票
5 回答
45152 浏览

android - Listview android中的Edittext

我有带有editext和textview的Listview。

当我触摸edittext然后edittext失去焦点!

我通过设置解决了这个问题android:windowSoftInputMode="adjustPan"(AndroidManifest.xml)。现在我触摸edittext而不是editext获得焦点,但应用程序标签和一些原始列表视图消失(顶部)。

当用户触摸edittext而不丢失应用程序标签和一些原始列表视图时,我想获得焦点。

我已经实现的代码:

下面的代码在用户触摸edittext时获得焦点,但应用程序标签和一些原始列表视图在软键盘弹出时消失。我想在用户触摸edittext时获得焦点而不丢失应用程序标签和一些原始列表视图。

1)AndroidManifest.xml

2) raw_layout.xml

3) main.xml

4) MyListViewDemoActivity

0 投票
3 回答
7608 浏览

android - Android BaseAdapter:在 getView() 重新进入时 convertView null

我正在根据http://bartinger.at/listview-with-sectionsseparators/中描述的技术构建一个带有部分的 ListView 。但我想通过对非部分项目重用 convertView 来扩展它。但是,我发现每次输入 getView() 方法时 convertView 变量都是空的。有人可以解释为什么会这样吗?

该列表正在创建和显示而没有错误,并且包含部分和非部分项目都很好。