Android 自定义 ListView/Adapter
Posted
技术标签:
【中文标题】Android 自定义 ListView/Adapter【英文标题】:Android Custom ListView/Adapter 【发布时间】:2015-03-28 04:50:51 【问题描述】:我想将我的 listView 从普通的 ArrayAdapter (simple_list_item_1) 更改为更像这样的东西:
姓名.....得分(右中)。 日期(姓名)
所以有 3 个视图...
-
姓名
日期
得分
我已经查看了如何制作自定义适配器和布局,但它们都非常令人困惑。我只想要一个可以添加到现有项目的简单修复。
这是我现在列表的代码:
//update listView
listAdapter = new ArrayAdapter<String>(GradesActivity.this, android.R.layout.simple_list_item_1, names);
mListView.setAdapter(listAdapter);
感谢您的帮助!
【问题讨论】:
所有数据都很好,但我只是不知道如何设计/实现自定义列表视图 您需要使用CustomAdapter
。
CustomAdapter
and custom_layout
for row not android.R.layout.simple_list_item_1
【参考方案1】:
上周我也遇到了同样的问题。我的解决方案是网上的教程:http://androidtuts4u.blogspot.com.br/2013/02/android-list-view-using-custom-adapter.html
只需将代码复制并粘贴到临时项目中(不到 15 分钟)即可帮助您了解它的简单性,并使其非常清晰,以便您可以将其实施到您的原始项目中。希望对你有帮助!
和平!
【讨论】:
我真的很高兴它成功了。我希望您在项目中获得乐趣和成功。和平:)【参考方案2】:ArrayAdapter 不能自动绑定三个视图
你可以试试 SimpleAdapter 或者自己扩展 BaseAdapter 实现
这是 Google 的培训
https://developer.android.com/training/material/lists-cards.html https://developer.android.com/training/wearables/ui/lists.html
这里是 SimpleAdapter 的示例http://www.java2s.com/Code/Android/UI/UsingSimpleAdaptertofilldatatoListView.htm
【讨论】:
【参考方案3】:您需要进行许多修复 1. 创建一个扩展 BaseAdapter 的类。
覆盖所有方法,创建该类的构造函数,用于初始化列表项
你只是传递名字
listView listAdapter = new ArrayAdapter(GradesActivity.this, android.R.layout.simple_list_item_1, names);
创建一个包含您需要的三个元素的类,而不只是名称,即命名日期和分数,并在那里设置 get 和 set 方法 并且类的对象将保存在一个列表中。 4.在getview方法中你必须设置这些变量
【讨论】:
以上是关于Android 自定义 ListView/Adapter的主要内容,如果未能解决你的问题,请参考以下文章