理
*/ new mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener()
{ public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{ // TODO Auto-generated method stub /* 将所选 mySpinner 的值带入 myTextView 中*/
myTextView.setText("您选择的是:"+ countriesStr [arg2]); /* 将 mySpinner 显示*/
9
Android 编程基础
arg0.setVisibility(View. VISIBLE ); } public void
onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub
myTextView.setText("NONE"); } }); /*
下拉菜单弹出的内容选项 触屏事件处理
*/ new
mySpinner.setOnTouchListener(new Spinner.OnTouchListener(){ public boolean
onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub /* 将
mySpinner 运行 Animation */ v.startAnimation(myAnimation); /* 将 mySpinner 隐藏*/
v.setVisibility(View. INVISIBLE); return false false; } }); /*
下拉菜单弹出的内容选项 焦
点改变事件处理
*/ new mySpinner.setOnFocusChangeListener(new
Spinner.OnFocusChangeListener(){ public void onFocusChange(View v, boolean
hasFocus) { // TODO Auto-generated method stub } }); } }
⑩ 结果
10
Android
编程基础 动态添加 删除的
Spinner
╱
菜单 动态添加 删除的
ArrayList
与
Widget 的依赖性
① 创建新工程
②
修改
mian.xml
布局,添加
UI
元素
<?xml version="1.0" encoding="utf-8" ?>
<TextView android:id="@+id/TextView_Show_yourChoice"
android:layout_width="190px" android:layout_height="wrap_content"
android:text="TextView" android:textSize="25sp"
android:layout_gravity="center_horizontal" > </TextView> <EditText
android:id="@+id/EditView_Input" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:textSize="18sp" > </EditText>
③
定义创建一个
List<T> /*定义*/ private String[] cities; private List cityList; /*初始
化字符串数组
*/ cities = new String[] { "Android", "BlackBerry", "J2ME", "Symbian",
"Broncho", "LinuxMobile", "Palm", "WindwosMobile" }; /*初始化 List
实例
ArrayList 的对象
*/ cityList = new ArrayList(); /*遍历,把字符串数组添加到 ArrayList 中*/ int for (int i
= 0; i < cities.length; i++) { cityList.add(cities[i]); }
④ 定义创建一个
ArrayAdapter /*定义*/ private ArrayAdapter arrayAdapter; /* 这里应该使用 List<> ,如果使
用
String[]
则会出错
*/ /*初始化下拉菜单的内容适配器*/ this arrayAdapter = new
ArrayAdapter(this this, android.R.layout. simple_spinner_item , cityList);
⑤ 设置
ArrayAdapter
在下拉菜单中的显示布局
/*设置下拉菜单显示内容的风格*/
arrayAdapter.setDropDownViewResource(android.R.layout. simple_spinner_dropdown_
item);
⑥
给下拉菜单添加内容
Adapter
适配器
/*给下拉菜单对象添加内容适配器*/
city_Spinner.setAdapter(arrayAdapter);
12
Android 编程基础
⑦
修改该
mainActivity.java
,实现动态添加和删除
package zyf.Ex_Ctrl_9ME; /*使用的包导
入
*/ import java.util.ArrayList; import java.util.List; import
android.app.Activity; import android.os.Bundle; import android.view.Menu; import
android.view.MenuItem; import android.view.View; import
android.widget.AdapterView; import android.widget.ArrayAdapter; import
android.widget.Button; import android.widget.EditText; import
android.widget.Spinner; import android.widget.TextView; import
android.widget.Toast; public class Ex_Ctrl_9ME extends Activity implements
Button.OnClickListener, Spinner.OnItemSelectedListener { /** Called when the
activity is first created. */ /*声明程序使用的对象*/ private TextView
show_yourChoice_TextView; private EditText input_City_EditText; private Button
Add_Button, Del_Button; private Spinner city_Spinner; private ArrayAdapter
arrayAdapter; private String[] cities; private String addString; private List
cityList; @Override public void onCreate(Bundle savedInstanceState) { super
super.onCreate(savedInstanceState); /*设置主屏显示布局为 main.xml*/
setContentView(R.layout. main); /*findViewByID()获取 XML 中的 UI 元素*/
show_yourChoice_TextView = (TextView) findViewById(R.id.