android客户端二级下拉框级联操作
在项目中,为了提高用户的体验效果,我们会用到级联操作,在android中关于下拉框的级联操作,我们可以使用Spinner。
关于Spinner,来自官方文档是这样介绍的:
A view that displays one child at a time and lets the user pick among them. The items in the Spinner come from the
Adapter
associated with this view。
简而言之就是
Spinner
is a widget similar to a drop-down list for selecting items.
这次项目中的需求是这样的,用户选择一个城市,二级下拉框自动获取该城市下的所有区/县,下面分布讲解。
- 对于android应用程序而言,布局时是不可缺少的,很重要,就在第一点来讲,采用两个LinearLayout布局,第一个LinearLayout采用垂直方向总体布局,第二个LinearLayout采用水平方向对说明信息进行子节点布局
View Code
- 这里主要在Activity中对布局文件进行操作。
- 对一些信息的声明:
//市区/子菜单项信息 private String[][] areaData = CityCountry.areaData; private ArrayAdapter<CharSequence> adapterArea = null; //spinner城市 private Spinner mCity = null; //spinner县区 private Spinner mCountry = null;
- 获得Spinner对象:
// spinner下拉列表框二级菜单级联 mCity = (Spinner) super.findViewById(R.id.city); mCountry = (Spinner) super.findViewById(R.id.area);
- 注册Spinner setOnItemSelectedListener监听事件:
mCity.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) { // 表示选项改变的时候触发 MppspPhoneAlarmAct.this.adapterArea = new ArrayAdapter<CharSequence>(MppspPhoneAlarmAct.this, // 定义所有的列表项 android.R.layout.simple_spinner_item, MppspPhoneAlarmAct.this.areaData[position]); // 设置二级下拉列表的选项内容 MppspPhoneAlarmAct.this.mCountry.setAdapter(MppspPhoneAlarmAct.this.adapterArea); } @Override public void onNothingSelected(AdapterView<?> arg0) { } });
- 对一些信息的声明:
- 部分效果图如下:
posted on 2012-05-31 18:45 Keep Running 阅读(8039) 评论(0) 编辑 收藏 举报