大家好,我们这一节讲一下Android下的下拉菜单Spinner,就像是Swing的Combobox,html的<select>,由于手机画面有限,要在有限的范围选择项目,下拉菜单是比较好的选择.

Android提供的Spinner Widget的下拉菜单已经非常好用了,样式也还适用.但我们本节的Demo的重点在于自定义下拉菜单里的样式,其关键在于调用setDropDownViewResource方法,以XML的方式定义下拉菜单要显示的模样.

Step 1: 创建一个新的Android 工程, 我们命名为SpinnerDemo .

Step 2 :打开layout 文件夹,找到main.xml 将其内容改为:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:padding="10dip"


android:layout_width="fill_parent"

android:layout_height="wrap_content">

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginTop="10dip"

android:text="Please select a planet:"



/>

<Spinner

android:id="@+id/spinner"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:drawSelectorOnTop="true"

android:prompt="@string/planet_prompt"


/>



</LinearLayout>

注意:


the Spinner's android:prompt



is a string resource. In this case, Android does not allow it to be a string, it must

be a reference to a resource. So...



Step 3
:找到在res/values/string.xml,
在里面加入如下(黑体
)一行:



<?xml version="1.0" encoding="utf-8"?>

<resources>

<string name="hello">Hello World, SpinnerDemo!</string>

<string name="app_name">SpinnerDemo</string>

<string name="planet_prompt">Choose a planet</string>


</resources>



Step 4
:在res/values/
文件夹下创建一个xml
文件,命名为arrays.xml:




<resources>


<string-array name="planets">


<item>Mercury</item>

<item>Venus</item>

<item>Earth</item>

<item>Mars</item>

<item>Jupiter</item>

<item>Saturn</item>

<item>Uranus</item>

<item>Neptune</item>

</string-array>


</resources>


这是用户可以从Spinner Widget选择list 的选择项.



Step5
:打开SpinnerDemo.java
,编辑内容如下:



package com.android.test;

import android.app.Activity;

import android.os.Bundle;

import android.widget.ArrayAdapter;

import android.widget.Spinner;



public class SpinnerDemo
extends Activity{

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

Spinner s = (Spinner) findViewById(R.id.spinner);

ArrayAdapter adapter = ArrayAdapter.createFromResource(

this, R.array.planets, android.R.layout.simple_spinner_item)



adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

s.setAdapter(adapter);



}

}



step 6:
最后run it
(运行之)效果如下:





搞定,让大家 久等了,终于把日语搞定了..Android,英语,我来了!!!!

更多相关文章

  1. 一定要看的 Android(安卓)资源目录的相关知识 raw drwable value
  2. [置顶] android popupwindow 弹出窗口在控件上方居中,比控件大一
  3. 4-安卓底层-HAL层-实现安卓控制LED
  4. android ICS式下拉菜单实现详解 PopupWindow
  5. Android菜单设计指南
  6. Android集成flutter使用热重载功能
  7. Android开发——菜单ActionBar
  8. Android基础教程(九)之自定义下拉菜单模式----Spinner与setDropD
  9. android-UI组件实例大全(十六)---菜单Menu

随机推荐

  1. android开发之Android(安卓)Interface De
  2. Android实现文章+评论(MVP,RxJava,Dagger2,But
  3. Android(安卓)OpenGL ES 应用(一)
  4. 详解Android使用OKHttp3实现下载(断点续
  5. Android:在子线程中更新UI,解析异步消息
  6. 自定义View之继承View(圆形进度图,播放器条
  7. android 绘图 反锯齿办法
  8. android 自定义视图控件开发
  9. android客户端—AsyncTask的使用
  10. 极光推送的 4 种消息形式