问题标签 [android-gridview]
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.
.net - 如何将来自 .NET Web 服务的 DataSet 绑定到 android GridView?
我正在调用一个返回数据集的.net webservice,那么我如何从服务中读取数据集并将其绑定到android GridView?
我收到的 Web 服务响应如下:
在“obj”中,我从 .NET Web 服务获取 DataSet,所以请告诉我如何将数据集读入 android GridView?
谢谢,唠叨。
android - 如何将 ArrayList 对象绑定到 android GridView?
我有一个数组列表对象的集合,例如:
那么如何将这个对象列表绑定persons
到 androidgridview
呢?
android - 如何将 GridView 绑定到自定义 ContentProvider
我正在尝试将客户 ContentProvider 绑定到包含 GridView 的活动
这是行不通的。
我通过执行与上述相同的操作并将其绑定到 ListActivity 并设置: setListAdapter(adapter);
android - 单击 GridView 中的项目时更改图像
我有一个包含 9 个项目的 GridView。我想要做的是当我单击一个项目时,它的图标会发生变化。我这样做的方式返回
我必须上课:
主布局.java
ImageAdapter.java
这是我的两个 xml 文件:
菜单网格.xml
主布局.xml
谁能告诉我我的代码有什么问题?或者如何在按下项目时更改项目的图像?我认为 onTouchListener 效率更高,因为它有事件,所以当event.getAction() == MotionEvent.ACTION_DOWN
我显示图像和event.getAction() == MotionEvent.ACTION_UP
显示原始图标时。
提前致谢。
android - 帮助!如何为 Android 创建日历应用程序?
我创建了一个GridView
来管理日历应用程序。这个想法是,用户将能够在特定日期添加文本和图像,并在网格中查看事件。
是否有任何日历库或内置类可以用来代替GridView
,或者是否有人有GridView
专门为此(或类似)目的使用 a 的经验?
非常感谢带有代码的答案。
android - OnItemClickListener 语法 - 请有人解释发生了什么以及它为什么起作用?
我已经实现了一个gridview,并且我一直在从示例中将它一起破解,以了解它是如何工作的。我创建了适配器,当我开始实现监听器时,我发现它是这样实现的。
为什么这与列表视图不同,为什么它的方法在变量声明后用大括号实现?
非常感谢,
米
android - setShadowLayer 导致 GridView 中的绘制时间变慢?
我目前正在使用包含 ImageViews 的 GridView 并希望在我的图像后面有阴影。例如,网格中随时可能有 15 张图像可见。假设我希望我的屏幕以 50fps 的速度渲染以显得平滑,我的数学表明我希望每个 ImageView 的总绘制时间不低于 1.3 毫秒左右。
我看看 Romain Guy 如何在他的 Shelves 应用程序中制作阴影: http ://code.google.com/p/shelves/source/browse/trunk/Shelves/src/org/curiouscreature/android/shelves/util/ ImageUtilities.java
这似乎是有道理的,所以我创建了以下类:
(显然这只是给了我带有阴影的黑色矩形,但足以让我初步猜测性能。)
滚动网格非常不稳定,所以我检查了在 Hierarchy Viewer 中获得的绘制时间:每个 ImageView 约 3.5 毫秒。这最多可以达到 19fps 左右。
但是,如果我删除 setShadowLayer() 语句,层次查看器显示每个 ImageView 的绘制时间约为 0.2 毫秒。
如果我忘记了 drawRect() 而是创建了一个带有阴影边缘的九个补丁,在 onDraw() 中调用 setBackgroundResource(R.drawable.my_nine_patch),我看到每个 ImageView 的绘制时间约为 1.5 毫秒。
使用带有 shadowLayer 的 Paint 是否存在已知的性能问题?我在上面的代码中做了什么傻事吗?
android - 如何在 Android 中单击的 GridView 项目上设置背景可绘制对象?
我有GridView
一堆图标,我需要选择一个。选择我的意思是:
- 我需要将可绘制的 id 存储到数据库中(以便以后可以访问它)
- 我需要在网格上绘制某种视觉提示,让用户知道当前选择了哪个图标
我发现了这个:
http ://groups.google.com/group/android-developers/browse_thread/thread/f08a58167dbaa8c8
所以我猜setSelection
它不在图片中,我不能用它来选择图标本身,也不能绘制视觉提示。我知道网格中的项目位置,onItemClickListener
我可以将其保存为私有类变量。我最大的问题是绘制视觉提示。
我怎样才能做到这一点?如何在单击的项目上绘制视觉提示,如果用户单击不同的项目,以“取消绘制”该视觉提示并在新项目中重新绘制它?
android - GridView 行重叠:如何使行高适合最高的项目?
像这个以前的人一样,我在 GridView 项目之间有不必要的重叠:
注意除了最右边的每一列中的文本。
我与上一个问题的不同之处在于我不想要一个恒定的行高。我希望行高变化以适应每行中最高的内容,以有效利用屏幕空间。
查看 GridView的源代码(不是权威副本,但 kernel.org 仍然处于关闭状态),我们可以在 fillDown() 和 makeRow() 中看到最后看到的 View 是“参考视图”:行的高度设置为该视图的高度,而不是从最高的视图。这解释了为什么最右边的列是好的。不幸的是,GridView 没有很好地设置,我无法通过继承来解决这个问题。所有相关的字段和方法都是私有的。
那么,在我走上“克隆并拥有”这条陈旧的臃肿道路之前,我是否在这里遗漏了一个技巧?我可以使用 TableLayout,但这需要我numColumns="auto_fit"
自己实现(因为我想要例如电话屏幕上的一个长列),而且它也不会是一个 AdapterView,这感觉应该是。
编辑:事实上,克隆和拥有在这里并不实用。GridView 依赖于其父类和兄弟类的不可访问部分,并会导致导入至少 6000 行代码(AbsListView、AdapterView 等)
android - 创建具有冻结列和冻结标题的表/网格
我正在开发一个小型 Android 应用程序。我需要这个 android 应用程序的一部分是有一个可以水平和垂直滚动的网格。但是,需要冻结最左边的列(始终在屏幕上,而不是水平滚动的一部分)。同样,需要冻结顶部标题行(不是垂直滚动的一部分)
如果上述内容没有太大意义,这张图片有望清楚地描述这一点:
关键:
- 白色:根本不滚动
- 蓝色:垂直滚动
- 红色:水平滚动
- 紫色:垂直和水平滚动
做这些维度之一很容易,我已经做到了。但是,我无法让这两个维度都起作用。(即,我可以让底部全部为蓝色,或者我可以让正确的部分全部为红色,但不完全如上)我拥有的代码如下,基本上会产生以下内容:
结果_grid.xml:
Java代码:
这是它的样子:
所以这就是水平滚动的样子
这是垂直滚动时的样子,注意你会丢失标题!这是个问题!
最后两点要注意!
首先,我不敢相信这在某个地方不存在。(我没有 Android,所以我无法四处寻找可能会这样做的应用程序)。但是,我已经在 StackOverflow 和整个 Internet 中搜索了至少两天,寻找 GridView 或 TableLayout 的解决方案,这将为我提供我想做的事情,但还没有找到解决方案。尽管我会因为错过它而感到尴尬,但如果有人知道那里有描述如何做到这一点的资源,我将不胜感激!
其次,我确实尝试“强制”解决这个问题,因为我添加了两个线性布局,一个捕获我想要创建的网格的“标题”部分,另一个捕获我想要的网格的底部“内容”部分创造。我可以发布这段代码,但这已经很长了,我希望我的意思很明显。这部分工作,但这里的问题是标题和内容列从未排列。我想在 TableRows 中的 TextViews 上使用 getWidth() 和 setMinimumWidth(),但正如这里所描述的,这些数据在 onCreate 期间无法访问(在 onPostCreate 中也无法访问)。我一直无法找到让它工作的方法,而这个领域的解决方案也很棒!
如果你能走到最后,向你致敬!