问题标签 [android-viewbinder]

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 投票
2 回答
11236 浏览

android - 自定义列表单击复选框

我已经ListActivityCursor使用SimpleCursorAdapter中填充了一个,当单击其中一个列表项时,它会启动另一个活动。我还ViewBinder用来对数据进行一些自定义转换。

我想为CheckBox列表中的每一行添加一个,所以我更改了视图并添加了一个CheckBox重力权。

添加CheckBox删除了单击项目的能力。当您按下列表项时,不再调用onListItemClick我覆盖的方法。ListActivity删除此CheckBox修复程序。为什么是这样?

CheckBox另外,如果单击列表项的主要部分但在选中项目中时具有附加功能,我如何设置列表以便它继续执行我所需的功能?将设置一个onCheckedChangedListener工作还是为列表中的每个项目重用相同的视图实例?

0 投票
1 回答
20474 浏览

android - 在 Android 上以本地化格式显示日期

我目前正在为 Android 构建我的第一个应用程序。我遇到的问题是与SimpleCursorAdapter. 我有一个类,它封装了对SQLitedatabase 具有三个表的访问。此类负责以 ISO 格式(“yyyy-MM-dd”)存储所有日期。当从数据库中读取日期值并显示在屏幕上时,我希望它们以本地化格式进行格式化。这是我想出的方法。它使用 aViewBinder来进行格式化:

getDateFormatView()创建一个SimpleDateFormat具有从 读取的模式的对象strings.xml。使用使用常量模式构造的 aparseDatabaseDate()解析数据库中的日期。SimpleDateFormatyyyy-MM-dd

虽然这段代码工作得很好,但我想知道是否有更好的方法来做到这一点。我不喜欢的是我需要:

  • 两个SimpleDateFormat对象(一个用于parseDatabaseDate()从 解析日期字符串SQLiteDatabase,另一个用于格式化值)
  • java.util.Date创建然后立即丢弃的对象
  • 相当多(在我看来)样板代码。

所以这就是我要问的原因:有没有更好的方法以本地化格式显示日期?

0 投票
2 回答
3111 浏览

android - 一些帮助理解 ViewBInder 中的 columnIndex

如果您只想在没有上下文的情况下查看问题,请跳到底部

我正在构建的 android 应用程序有一个包含三列的简单表:

_id INTEGER PRIMARY KEY...,名称TEXT,颜色INT

此表称为categories。我从数据库中加载我的类别并将它们输入一个SimpleCursorAdapter以供使用,Spinner如下所示:

我设置了一个自定义ViewBinder,因为我希望类别名称是微调项的文本,颜色是背景颜色。我的ViewBinder样子是这样的:

这是我的问题(最后)

setViewValue方法中,columnIndex应该做什么?文档说“可以在光标中找到数据的列”但是当我通过setViewValue进行调试时,我点击了它三次,并且columnIndex始终为1.

我期待调试器为 from 数组中的每个条目进入setViewValue一次,首先是 columnIndex 1,然后是2。或者可能对查询结果中的每一列执行一次。

上面的代码有效,我可以获得所需的功能,但这仅仅是因为我的 NAME_COLUMN 和 COLOR_COLUMN 常量。我真的很想听听对自定义 ViewBinders 更有经验的人对setViewValue及其参数的解释。

0 投票
1 回答
398 浏览

android - 访问使用适配器动态创建的对象

ListViewTextViews 和Spinners 创建了一个动态,使用 aSimpleAdapter和 a ViewBinder

Spinner用户选择后如何访问值?

我想我需要在 my 中创建对微调器的引用ViewBinder,但我不知道如何。我试过这个,但它不工作:

0 投票
1 回答
4924 浏览

android - 修改 SimpleCursorAdapter 的数据

我正在开发一个电视指南应用程序,它使用一次ListActivity显示一个频道/一天的电视节目。我正在RelativeLayout为这些ListView项目使用 a,我希望它ListView看起来像这样:

ListView我使用以下代码获取项目的数据:

我的问题是该start_time字段datetime具有以下格式:

所以我得到的是:

我想做的是使用SimpleDateFormat( "HH:mm") 格式化上面的内容,所以我只得到该字段的hour:minute一部分。start_time

我找到了SimpleCursor.ViewBinder表明它可能是我想要的界面,但我不知道如何使用它。如果我是对的ViewBinder,我会很感激一些关于如何使用它的示例代码的指针。否则,我还能如何实现将start_time字段更改为简单地显示HH:mm格式?

0 投票
1 回答
351 浏览

android - ViewBinder 的问题

我需要显示ListView一些图像,并且我正在使用以下代码:

我有一个问题:在列表中有 4 行的空间,当我向下滚动时,第五行的图像与第一行的图像相同,随后的图像也错误。

有人能告诉我为什么吗?

0 投票
1 回答
955 浏览

android - ExpandableListActivity 中的 ContextMenu 问题

在一个ExpandableListActivity我已经注册了一个ContextMenu. 我想要做的是存储ContextMenu被按下的组的子列表项的数据。根据:

v是为其构建上下文菜单的视图。所以这个视图应该是我单击的列表项的视图,但它不是,它指的是子列表中的第一个列表项。我相信它应该返回为其构建上下文菜单的列表项的视图,但这里不是这种情况。这是我的代码:

有人可以对此有所了解吗?

编辑:

代码ExpandableListAdapter

的代码ViewBinder

0 投票
1 回答
207 浏览

android - 将变量传递给 ViewBinder

我有一个ViewBinder充当我ListView和数据库游标适配器之间的中间人。根据显示此数据的上下文,我需要ViewBinder做不同的事情。

例如,以一个任务管理应用程序为例,它显示所有存在的任务组的任务。也许在这种情况下,应用程序希望在列表视图中显示任务组的名称,而如果它正在显示特定任务组之一的任务,则它不希望这样做。列表视图项可以有一个隐藏字段,并且ViewBinder可以用于将任务组的名称映射到该字段,并在必要时将其设置为可见(按照主应用程序的说明)。

我的问题是如何告诉ViewBinder它正在显示的上下文,以便它可以确定如何表现?

我意识到这可能可以通过实现许多不同ViewBindersViewBinder.

0 投票
3 回答
1090 浏览

android - 我可以从 ViewBinder 中的 ListView 行更改 LinearLayout 的背景吗?

我有ListView一些元素,我想根据数据库中的类型更改行的背景。我得到的是一个SimpleCursorAdapter实例,它是函数adapter.setViewBinder(...)。但似乎,我无法访问LinearLayout一行。这是代码:

0 投票
1 回答
163 浏览

android - 如何使光标适应具有大量自定义行为的 ListView?

我目前正在开发一个 android 应用程序,该应用程序使用SimpleCursorAdapter自定义ViewBinder来设置我的ListView.

但是,当我的列表长于屏幕大小,并且用户上下滚动时,系统会导致错误的行呈现错误的颜色等。我的理解是这是系统重用的问题视图作为滚动的优化,如此所述。

我完全支持优化,但是我需要项目在ListView. 解决这个问题的正确方法是什么?

我的想法是我可以实现 a CursorAdapter,或者最好是 a SimpleCursorAdapter,但我不知道如何去做。或者,是否只是将文本颜色设置回 my 中的默认值ViewBinder