v
Spinner其实就是一个列表选择框,不过Android的列表选择框并不是需要显示下拉列表的,而是相当于弹出一个菜单供用户选择。
XML
属性
|
说明
|
Android:prompt
|
设置该列表选择框的提示
|
Android:entries
|
使用数组资源设置该下拉列表框
的列表项目
|
下面是xml布局文件生成下拉框
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <AutoCompleteTextView
- android:id="@+id/auto"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:completionHint="请选择喜欢的图书"
- android:dropDownHorizontalOffset="20dp"
- android:completionThreshold="1"
- />
- <!-- android:entries 设置选择内容,指向数组 -->
- <!-- android:prompt 设置选择框标题,必须引用 -->
- <Spinner
- android:id="@+id/spinner1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:entries="@array/books"
- android:prompt="@string/hello" />
- </LinearLayout>
其中books文件:name是"books"就可以
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string-array name="books" >
- <item>Android</item>
- <item>Java</item>
- <item>Jsp</item>
- </string-array>
- </resources>
除了布局文件中可以生成外,下面还展示了自动下拉提示:
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.ArrayAdapter;
- import android.widget.AutoCompleteTextView;
- import android.widget.Spinner;
- import android.widget.Toast;
- import android.widget.AdapterView.OnItemSelectedListener;
- public class AndroidtestActivity10 extends Activity
- {
- String[] books=new String[]{
- "疯狂java讲义",
- "疯狂ajax讲义",
- "疯狂xml讲义",
- "疯狂android讲义"
- };
- @Override
- public void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main10);
- //创建一个ArrayAdapter封装数组
- ArrayAdapter<String> aa=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,books );
- //自动下拉提示
- AutoCompleteTextView act=(AutoCompleteTextView) findViewById(R.id.auto);
- //设置ArrayAdapter
- act.setAdapter(aa);
- //定义一个spinner
- Spinner spinner=(Spinner) findViewById(R.id.spinner1);
- //添加选择事件
- spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
- @Override
- public void onItemSelected(AdapterView<?> arg0, View arg1,
- int arg2, long arg3) {
- //显示选择结果
- Toast.makeText(AndroidtestActivity10.this, "选择了:"+arg0.getItemAtPosition(arg2), Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onNothingSelected(AdapterView<?> arg0) {
- }
- });
- }
- }
转载于:https://blog.51cto.com/siyanpeng/751686