在每个项目中使用Switch和TextView自定义ListView

时间:2012-04-02 10:18:12

标签: android android-listview

我想要一个自定义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_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<RelativeLayout
    android:id="@+id/queuesLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    >

    <TextView
        android:id="@+id/queues_item_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        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_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:textOn="Tilmeldt" 
        android:textOff="Frameldt"/>

</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

你可以创建一个自定义适配器,然后给你的视图充气并输入正确的数据。下面有一个链接示例,主要部分是实现getView()方法。

http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/

答案 1 :(得分:-1)

这是自定义列表视图的最佳示例,请查看此链接Customizing Android ListView Items with Custom ArrayAdapter