每个项目中带有 Switch 和 TextView 的自定义 ListView
Posted
技术标签:
【中文标题】每个项目中带有 Switch 和 TextView 的自定义 ListView【英文标题】:Custom ListView with Switch and TextView in each item 【发布时间】:2012-04-16 00:07:53 【问题描述】:我想要一个自定义 ListView,其中包含一组用户可以订阅或取消订阅的队列。我的列表视图中的每个项目都应包含一个包含 TextView 和 Switch 的 RelativeLayout。我该如何填写此列表?
我有一个 JSON 对象数组,其中每个 JSON 对象都有一个名称和一个字符串值(无论该用户是否订阅了队列。所以:
qInfo[i].optString("name") 应该设置我的 TextView 的文本。
qInfo[i].optString("value") 应该设置我的 Switch 的状态。
queues_item:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/queuesLayout"
android:layout_
android:layout_
>
<TextView
android:id="@+id/queues_item_text"
android:layout_
android:layout_
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Switch
android:id="@+id/queues_item_switch"
android:layout_
android:layout_
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:textOn="Tilmeldt"
android:textOff="Frameldt"/>
</RelativeLayout>
【问题讨论】:
【参考方案1】:您可以只创建一个自定义适配器,然后扩展您的视图并使用输入的正确数据返回它。下面有一个示例链接,主要部分是实现 getView() 方法。
http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/
【讨论】:
以上是关于每个项目中带有 Switch 和 TextView 的自定义 ListView的主要内容,如果未能解决你的问题,请参考以下文章
在 ConstraintLayout 换行问题中带有 drawableEnd 的 TextView
Swift 中带有 tableView 或 TableViewController 的 UIViewController