Android UI控件ExpandableListView使用指南

0 下载量 145 浏览量 更新于2024-08-31 收藏 83KB PDF 举报
Android UI控件ExpandableListView基本用法详解 ExpandableListView是Android UI控件中的一种重要组件,它可以显示一个视图垂直滚动显示两级列表中的条目,这不同于列表视图(ListView)。ExpandableListView允许有两个层次:一级列表中有二级列表。这种控件通常用于手机设置中的分类和手机版QQ等应用程序中。 使用ExpandableListView的整体思路可以分为三步: (1)给ExpandableListView设置适配器,那么必须先设置数据源。数据源就是此处的适配器类ExpandableAdapter,此方法继承了BaseExpandableListAdapter,需要重写里面的10个方法。 (2)数据源中,用到了自定义的View布局,此时根据自己的需求,来设置组和子项的布局样式。getChildView()和getGroupView()方法设置自定义布局。 (3)数据源设置好,直接给ExpandableListView.setAdapter()即可实现此收缩功能。 在实现ExpandableListView时,需要在activity_main.xml中放置一个ExpandableListView控件,例如: ```xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/"> <!-- ExpandableListView控件 --> <ExpandableListView android:id="@+id/expandable_list_view" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout> ``` 在Java代码中,需要创建一个ExpandableAdapter,例如: ```java public class MyExpandableAdapter extends BaseExpandableListAdapter { // ... } ``` 然后,在Activity中,创建一个ExpandableListView对象,并设置其Adapter,例如: ```java public class MyActivity extends Activity { private ExpandableListView expandableListView; private MyExpandableAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); expandableListView = (ExpandableListView) findViewById(R.id.expandable_list_view); adapter = new MyExpandableAdapter(); expandableListView.setAdapter(adapter); } } ``` 使用ExpandableListView可以实现二级列表的显示,提高用户体验。