Android编程开发之Spinner组件用法

本文实例讲述了Android编程开发之Spinner组件用法。分享给大家供大家参考,具体如下:

Spinner组件组要用显示一个下拉列表,在使用中需要用到适配器Adapter,下面是一个该组件的使用示例

首先是布局文件main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="vertical" android:layout_width="fill_parent"
 android:layout_height="fill_parent">
 <Spinner android:id="@+id/spinner1" android:layout_width="fill_parent"
  android:layout_height="wrap_content" />
 <Spinner android:id="@+id/spinner2" android:layout_width="fill_parent"
  android:layout_height="wrap_content" android:layout_marginTop="20dp"/>
</LinearLayout>

由于用到simpAdapter所以要写子项Item的布局如下 item.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="horizontal" android:layout_width="fill_parent"
 android:layout_height="wrap_content">
 <ImageView android:id="@+id/ivLogo" android:layout_width="60dp"
  android:layout_height="60dp" android:src="@drawable/icon"
  android:paddingLeft="10dp" />
 <TextView android:id="@+id/tvApplicationName" android:textColor="#000"
  android:layout_width="wrap_content" android:layout_height="fill_parent"
  android:textSize="16dp" android:gravity="center_vertical"
  android:paddingLeft="10dp" />
</LinearLayout>

下面是代码:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.AdapterView.OnItemSelectedListener;
public class Main extends Activity
{
 @Override
 public void onCreate(Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  //获取对象
  Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
  String[] applicationNames = new String[]
  { "多功能日历", "eoeMarket客户端", "耐玩的重力消砖块", "白社会", "程序终结者" };
  ArrayAdapter<String> aaAdapter = new ArrayAdapter<String>(this,
    android.R.layout.simple_spinner_item, applicationNames);
  // 将如下代码可以使列表项带RadioButton组件
  // aaAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  spinner1.setAdapter(aaAdapter);
  Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
  final List<Map<String, Object>> items = new ArrayList<Map<String, Object>>();
  Map<String, Object> item1 = new HashMap<String, Object>();
  item1.put("ivLogo", R.drawable.calendar);
  item1.put("tvApplicationName", "多功能日历");
  Map<String, Object> item2 = new HashMap<String, Object>();
  item2.put("ivLogo", R.drawable.eoemarket);
  item2.put("tvApplicationName", "eoeMarket客户端");
  items.add(item1);
  items.add(item2);
  SimpleAdapter simpleAdapter = new SimpleAdapter(this, items,
    R.layout.item, new String[]
    { "ivLogo", "tvApplicationName" }, new int[]
    { R.id.ivLogo, R.id.tvApplicationName });
  spinner2.setAdapter(simpleAdapter);
  //为Spinner2加上监听事件
  spinner2.setOnItemSelectedListener(new OnItemSelectedListener()
  {
   @Override
   public void onItemSelected(AdapterView<?> parent, View view,
     int position, long id)
   {
     new AlertDialog.Builder(view.getContext()).setTitle(
       items.get(position).get("tvApplicationName")
         .toString()).setIcon(
       Integer.parseInt(items.get(position).get("ivLogo")
         .toString())).show();
   }
   @Override
   public void onNothingSelected(AdapterView<?> parent)
   {
   }
  });
 }
}

希望本文所述对大家Android程序设计有所帮助。

(0)

相关推荐

  • Android spinner下垃菜单用法实例详解

    本文实例讲述了Android spinner下垃菜单用法.分享给大家供大家参考,具体如下: 一.使用数组作为数据源 1. 在layout布局文件:声明一个TextView控件和一个Spinner控件,代码如下 <Spinner android:id="@+id/Spinner01" android:layout_width="fill_parent" android:layout_height="wrap_content"></

  • Android Spinner 下拉菜单的使用

    Android 中下拉菜单,即如html中的<select>,关键在于调用setDropDownViewResource方法,以XML的方式定义下拉菜单要显示的模样 步骤: 1.定义Spinner控件 复制代码 代码如下: <Spinner android:id="@+id/spinner"android:layout_width="fill_parent"android:layout_height="wrap_content"

  • Android编程下拉菜单spinner用法小结(附2则示例)

    本文较为详细的总结分析了Android编程下拉菜单spinner用法.分享给大家供大家参考,具体如下: Spinner控件也是一种列表类型的控件,它的继承关系如下: java.lang.Object    ↳ android.view.View      ↳ android.view.ViewGroup        ↳ android.widget.AdapterView<Textends android.widget.Adapter>          ↳ android.widget.A

  • Android编程开发之Spinner控件用法实例分析

    本文实例讲述了Android编程开发之Spinner控件用法.分享给大家供大家参考,具体如下: 下拉列表 Spinner,Spinner是一个每次只能选择所有项的一个项的控件.它的项来自于与之相关联的适配器中. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列表将所有可选的项列出来.供用户选择. 一.使用数组作为数据源 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/ap

  • Android实现三级联动下拉框 下拉列表spinner的实例代码

    主要实现办法:动态加载各级下拉值的适配器 在监听本级下拉框,当本级下拉框的选中值改变时,随之修改下级的适配器的绑定值              XML布局: 复制代码 代码如下: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_w

  • 学习Android自定义Spinner适配器

    本文为大家分享Android自定义Spinner适配器的相关知识点,供大家参考,具体内容如下 一.大致效果 二.关键代码 在注释中讲重点吧. (1)Spinner的布局: car_brand_spinner.xml 即为弹出来的下拉列表的布局啦,后面的那个布局就不拿出来丢人现眼了,反正知道有一个Spinner的id为carBrandSpinner就可以了. <?xml version="1.0" encoding="utf-8"?> <Linear

  • Android下拉列表spinner的实例代码

    spinner组件有点类型于HTML中的下拉框<Select></select>的样子,让用户每次从下拉框中选取一个,本文为大家分享了Android下拉列表spinner的具体实现代码,供大家参考,具体内容如下 mian.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.c

  • android 之Spinner下拉菜单实现级联

    效果图如下: 默认第一次加载 选择原始队列: 级联效果图: 关键代码给下拉列表选中事件监听绑定Id : 复制代码 代码如下: int pos = firsthand_dlbh_pinner.getSelectedItemPosition();firsthand_pdbh_adapter = new ArrayAdapter<String>(context, android.R.layout.simple_spinner_item, queu_info[pos]);firsthand_pdbh_

  • Android中Spinner控件之键值对用法实例分析

    本文实例讲述了Android中Spinner控件之键值对用法.分享给大家供大家参考.具体如下: 一.字典表,用来存放键值对信息 package com.ljq.activity; import java.io.Serializable; @SuppressWarnings("serial") public class Dict implements Serializable { private Integer id; private String text; public Dict()

  • Android自定义Spinner下拉列表(使用ArrayAdapter和自定义Adapter实现)

    今天学习了Spinner组件的使用,非常好用的一款组件,相当于从下拉列表中选择项目,今天收获颇多,下面给大家演示一下Spinner的使用(分别使用ArrayAdapter和自定义Adapter实现),具体内容如下. (一):使用ArrayAdapter进行适配数据: ①:首先定义一个布局文件: <span style="font-size:16px;"><?xml version="1.0" encoding="utf-8"?&

  • Android实现下拉菜单Spinner效果

    Android 中下拉菜单,即如html中的<select>,关键在于调用setDropDownViewResource方法,以XML的方式定义下拉菜单要显示的模样 1.1.activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android

随机推荐