源代码以下,配置信息参看下载文件
package com.yanjun;
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
public
class MainActivity
extends Activity {
private
static
final String[] CONTENT = {
"北京",
"上海",
"山东",
"四川",
"云南",
"河北",
"河南",
"黑龙江" };
TextView textView;
ArrayAdapter<String> adapter;
Spinner spinner;
// 动画效果
Animation animation;
@Override
public
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView = (TextView) findViewById(R.id.textView1);
spinner = (Spinner) findViewById(R.id.spinner1);
// 适配内容
adapter =
new ArrayAdapter<String>(MainActivity.
this,
android.R.layout.simple_spinner_item, CONTENT);
// 获取模板
adapter.setDropDownViewResource(R.layout.moban);
// 将ArrayAdapter添加到spinner
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(
new Spinner.OnItemSelectedListener() {
public
void onItemSelected(AdapterView<?> parent, View view,
int position,
long id) {
textView.setText(
"您选择的是" + CONTENT[position]);
// 将spinner显示
parent.setVisibility(View.VISIBLE);
}
public
void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
});
// 设置动画效果
animation = AnimationUtils.loadAnimation(
this, R.anim.anim);
// 将spinner添加OnTouchListener
spinner.setOnTouchListener(
new OnTouchListener() {
public
boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
v.startAnimation(animation);
v.setVisibility(View.VISIBLE);
return
false;
}
});
}
}
该图代码以下
package com.yanjun;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.AdapterView.OnItemSelectedListener;
public
class MainActivity
extends Activity {
// 原spinner信息
private
static
final String[] CONTENT = {
"北京",
"上海" };
// 适配器
ArrayAdapter<String> adapter;
// 下拉控件
Spinner spinner;
// 按钮控件
Button addButton, deleteButton;
// 输入控件
EditText editText;
// 内容列表
List<String> allContent;
@Override
public
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 内容列表部分
allContent =
new ArrayList<String>();
for (
int i = 0; i < CONTENT.length; i++) {
// 自动添加到内容的末尾
allContent.add(CONTENT[i]);
}
// new ArrayAdapter对象并将allContent传入
adapter =
new ArrayAdapter<String>(
this, R.layout.moban, allContent);
// 得到系统自带的布局文件 android.R.layout.simple_dropdown_item_1line
//adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
//带有radio选项的列表
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
addButton = (Button) findViewById(R.id.button_add);
deleteButton = (Button) findViewById(R.id.button_delete);
editText = (EditText) findViewById(R.id.editText1);
spinner = (Spinner) findViewById(R.id.spinner1);
spinner.setAdapter(adapter);
addButton.setOnClickListener(
new OnClickListener() {
public
void onClick(View v) {
// 先比较添加的值是否存在,不存在再添加
String addString = editText.getText().toString();
for (
int i = 0; i < adapter.getCount(); i++) {
if (addString.equals(adapter.getItem(i))) {
Toast.makeText(MainActivity.
this,
"内容已经存在", 0).show();
editText.setText("");
return;
}
}
if (!addString.equals("")) {
//将之添加到adapter
adapter.add(addString);
//取得添加值的位置
int position = adapter.getPosition(addString);
//将spinner选择在添加的位置上
spinner.setSelection(position);
editText.setText("");
}
}
});
deleteButton.setOnClickListener(
new OnClickListener() {
public
void onClick(View v) {
// 在不为空的状况下,删除所选内容
if (spinner.getSelectedItem()!=
null) {
adapter.remove(spinner.getSelectedItem().toString());
editText.setText("");
if (adapter.getCount()==0) {
editText.setText("");
}
}
}
});
//spinner监听事件
spinner.setOnItemSelectedListener(
new OnItemSelectedListener() {
public
void onItemSelected(AdapterView<?> parent, View view,
int position,
long id) {
// 点击选中项在,并在edittext上显示
editText.setText(parent.getSelectedItem().toString());
}
public
void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub } }); } }