android应用开发之spinner控件的简单使用
Android的控件有很多种,其中就有一个Spinner的控件,这个控件其实就是一个下拉显示列表。Spinner是位于 android.widget包下的,每次只显示用户选中的元素,当用户再次点击时,会弹出选择列表供用户选择,而选择列表中的元素同样来自适配器。Spinner是View类的一个子类。 先看spinner的效果图: 代码: MainActivity package com.mecury.spinnertest; import java.util.ArrayList; import android.support.v7.app.ActionBarActivity; impor 在Android应用开发中,Spinner控件是一个非常实用的组件,它允许用户从一个下拉列表中选择一个选项。Spinner属于`android.widget`包,继承自View类,它在界面中通常表现为一个单行文本,当点击后会弹出一个列表供用户选择。下面我们将详细探讨Spinner的使用方法。 我们来看Spinner的基本用法。在创建Spinner时,我们需要一个适配器(Adapter)来提供数据源。适配器通常是一个ArrayAdapter,它可以从一个数组或者ArrayList中获取数据并将其转化为Spinner可显示的格式。以下是一个简单的示例: ```java ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.number_array, android.R.layout.simple_spinner_item); ``` 这里,`R.array.number_array`是一个在strings.xml资源文件中定义的数组,`android.R.layout.simple_spinner_item`则是Android系统提供的默认布局,用于显示Spinner的条目。 接下来,我们需要为Spinner设置适配器,以便显示数据: ```java spinnerButton.setAdapter(adapter); ``` 为了改变Spinner的下拉列表样式,我们可以指定一个不同的布局,例如`android.R.layout.simple_spinner_dropdown_item`: ```java adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); ``` 除此之外,我们还可以通过监听器(Listener)来处理用户的选择事件。`OnItemSelectedListener`接口提供了两个方法:`onItemSelected`会在用户选择了一个项时被调用,`onNothingSelected`则在用户取消选择时触发。例如: ```java spinnerButton.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { String selected = parent.getItemAtPosition(position).toString(); // 处理选择的项 } @Override public void onNothingSelected(AdapterView<?> parent) { System.out.println("nothingSelect"); } }); ``` 如果需要动态添加数据,可以创建一个新的ArrayList,然后用它来初始化ArrayAdapter: ```java ArrayList<String> list = new ArrayList<String>(); list.add("1. 苹果"); list.add("2. 橘子"); ArrayAdapter<String> adapter2 = new ArrayAdapter<String>( this, R.layout.item, R.id.textview, list); spinner.setAdapter(adapter2); ``` 在这个例子中,`R.layout.item`是你自定义的布局,`R.id.textview`是布局中用来显示数据的TextView的ID。 同样别忘了为这个新的Spinner设置监听器。 Spinner控件在Android应用中常用于实现有限选项的快速选择,它的使用涉及到了适配器、监听器以及对布局的理解。熟练掌握Spinner的使用,可以帮助开发者构建更友好、更高效的用户界面。
- 粉丝: 5
- 资源: 953
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0