Spinner构建:
1. 构建数据Adapter
2. 绑定Adapter
话不多说,直接上代码:
1. 构建数据Adapter
2. 绑定Adapter
话不多说,直接上代码:
package com.kevin.spinner;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
public class SpinnerActivity extends Activity {
private Spinner spinner;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
spinner = (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<String> adapter = buildAdapter();
spinner.setAdapter(adapter);
// bind listener
spinner.setOnItemSelectedListener(new ItemSelectedListener());
}
private ArrayAdapter<String> buildAdapter() {
List<String> data = new ArrayList<String>();
data.add("red");
data.add("blue");
data.add("yellow");
/*
* 第一个参数context
* 第二个参数绑定数据数据所需要的布局文件(此处用的内置的布局文件)
* 第三个参数将数据绑定到布局文件中的哪个控件上,控件的id(此处也是用的内置的控件id)
* 第四个参数是一个List列表
*/
ArrayAdapter<String> adapter = new ArrayAdapter<String>(SpinnerActivity.this,
android.R.layout.simple_spinner_item,
android.R.id.text1, data);
// 设置点击下拉按钮的时候的布局文件(此处还是采用的内置的布局文件)
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
return adapter;
}
// 选择item监听器
class ItemSelectedListener implements OnItemSelectedListener{
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position,
long id) {
TextView textView = (TextView)view;
System.out.println(textView.getText() + " " + position);
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
System.out.println("Nothing");
}
}
}