Spinner常用的xml属性:
在使用Spinner的时候如果已经知道列表的数据,其实直接可以把数据指定在android:entries中,而不需要在代码中动态增加。如果没有指定entries这个属性,需要在Activity中设置Adapter。
模拟效果截图:
代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#000000"
android:textSize="20sp"
android:layout_marginBottom="10dp"
android:text="请选择:"/>
<Spinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#EF5350"
android:dropDownVerticalOffset="5dp"
/>
</LinearLayout>
package com.example.spinnertest;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView tv;
private Spinner spinner;
private String[] data = new String[] { "Android4.0", "Android开发游戏",
"Android面试宝典", "Android开发" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
spinner = (Spinner) findViewById(R.id.spinner);
tv = (TextView) findViewById(R.id.textview);
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice, data);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
String selection = adapter.getItem(arg2);
tv.setText("您选择的是:" + selection);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
}
}