如何获取自定义ListView中每个项目的引用或ID?

时间:2013-12-24 17:31:44

标签: android listview adapter custom-adapter

我有一个带有以下布局的自定义ListView:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:orientation="vertical"
              android:layout_gravity="center"
        >
    <TextView
            android:id="@+id/question"
            android:padding="5dip"
            android:background="#e0f3ff"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"/>
    <LinearLayout
            android:id="@+id/panel"
            android:visibility="gone"
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
        <TextView
                android:layout_margin="2dip"
                android:id="@+id/answer"
                android:padding="5dip"
                android:background="#FFFFFF"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"/>
    </LinearLayout>
</LinearLayout>

所以我的观点是:

 1. Q
    A
 2. Q
    A
 3. Q
    A

现在我想在每个'Q'中绑定click事件,并根据我想要更改'A'的可见性。我也想要参考每个问题,答案和答案包装布局。我正在使用{{1} }。

custom adapter 'helpAdapter'

2 个答案:

答案 0 :(得分:2)

在xml.set中使用ExpandableListView将每个组分别设置为Question(Q)和item group来回答(A) 这会在点击Q时自动显示和隐藏子项;

答案 1 :(得分:1)

在列表适配器中,您可以在getView()方法中将onClickListener设置为question TextView。然后在onClickListener中更改答案的可见性(可能使用某种动画)。