这个小Demo用到Spinner控件及ArrayAdapter 来简单的演示Spinner控件选择地点的操作 ,同样 所有的注意事项 在注释当中给出这里不再赘述。。。
布局文件如下所示
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/showcity"
android:textSize="25sp"
android:textColor="#f0f0"
android:text="您选择的地址是:"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Spinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
MainActivity代码如下
private TextView mTextView;
private Spinner mSpinner;
private List<String> list;
//数组适配器
private ArrayAdapter<String> arr_adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.spinner);
mTextView = (TextView) findViewById(R.id.showcity);
mSpinner = (Spinner) findViewById(R.id.spinner);
//设置数据源
list = new ArrayList<String>();
list.add("北京");
list.add("上海");
list.add("广州");
list.add("深圳");
//2.新建ArrayAdapter(数组适配器)
arr_adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
//3.adapter设置一个下拉列表样式
arr_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//4 加载适配器
mSpinner.setAdapter(arr_adapter);
mSpinner.setOnItemSelectedListener(this);
}
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
//两种获取点击item的方式获取城市名称
// String cityname = arr_adapter.getItem(position);
String cityname = list.get(position);
mTextView.setText(cityname);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}