spinner的中文含义为微调器,在android里,其代表的是下拉列表框。它的数据来源是Adapter。

对于一个下拉框来说,那些元素最重要呢?第一:数据来源 第二:展现给用户时候的样式 第三:和用户交互

让我们看看代码示例:

package cn.com.chenzheng_java; import java.util.ArrayList; import java.util.HashMap; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Spinner; import android.widget.Toast; import android.widget.AdapterView.OnItemSelectedListener; public class SpinnerActivity extends Activity{ private Spinner spinner; String[]address = new String[]{ "海淀", "海淀黄庄", "中关村", "长城", "圆明园" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.spinner); runWithText(); } /** * 下拉框内容为文本的spinner */ private void runWithText(){ spinner = (Spinner) findViewById(R.id.spinner1); /** * new ArrayAdapter<String>(this,R.layout.spinner_text,address);中的第二个参数R.layout.spinner_text * 必须是一个以TextView为根标签的layout文件!详情请看后台代码,后台代码中会根据该索引获取一个view然后强转成 * TextView类型。 */ ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,R.layout.spinner_text,address); // 设置弹出的下拉框样式 android.R.layout.simple_spinner_dropdown_item为android为我们提供的一个样式 arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(arrayAdapter); AdapterView.OnItemSelectedListener listener = new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(SpinnerActivity.this, address[position], Toast.LENGTH_LONG).show(); } /** * parent 就是我们的spinner */ @Override public void onNothingSelected(AdapterView<?> parent) { Toast.makeText(SpinnerActivity.this, "未返回任何东西", Toast.LENGTH_LONG).show(); } }; spinner.setOnItemSelectedListener(listener ); } }

--------------------------------------------------------------

结合代码,我们再来看看前面说的三个重点要素。

第一,数据源:我们是通过ArrayAdapter进行设置的。

第二布局样式:我们可以通过setDropDownViewResource()来为其添加一个特定样式的布局文件索引

第三:与用户交互。我们可以通过设置事件监听来完成。这里主要的实现是setOnItemSelectedListener()方法。当用户选择不同的item时触发。

补贴上代码的运行结果:

更多相关文章

  1. Android(安卓)Dialog Activity
  2. Android提权代码zergRush分析
  3. Android(安卓)编码规范 | 代码风格指南
  4. Android(安卓)Appcompat样式使用自定义Dialog
  5. Android实用代码七段(三)
  6. Unable to recreate missing debug keystore解决办法
  7. %s使用
  8. android用户界面-组件Widget-选项卡Tab
  9. Android全屏 去除标题栏和状态栏

随机推荐

  1. react-native 键盘遮挡输入框
  2. Android(安卓)- adb - Linux - 程序“adb
  3. Android(安卓)Wifi 启动过程分析
  4. android 开发工具相关
  5. Android琐碎(壹)
  6. Android中HAL如何向上层提供接口总结-hw_
  7. Cocos2d-x官方中文文档
  8. Android(安卓)各种功能代码收集
  9. Android(安卓)多进程使用场景
  10. Android(安卓)Service基本知识