您的位置:首页 > 移动开发 > Android开发

Android Spinner详解

2016-12-17 18:58 375 查看

直接上例子代码,先是布局

<RelativeLayout 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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<Spinner
android:id="@+id/sp"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:textSize="50sp"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/hello_world" />

</RelativeLayout>


说明在代码中

public class MainActivity extends Activity {

private Spinner sp;
private TextView tv;

private ArrayList<String> characters;

private ArrayAdapter<String> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

characters = new ArrayList<String>();
tv = (TextView) findViewById(R.id.tv);
sp = (Spinner) findViewById(R.id.sp);

characters.add("呵呵");
characters.add("哈哈");
characters.add("嘻嘻");
characters.add("嘎嘎");
characters.add("嘿嘿");

/*
* 参数: 1.上下文环境 2.Spinner展开后的样式 3.数据源
*/
adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, characters);
// 为Spinner的下拉列表设置样式
adapter.setDropDownViewResource(android.R.layout.simple_list_item_single_choice);
sp.setAdapter(adapter);

sp.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// tv.setText(characters.get(position));
tv.setText(adapter.getItem(position));
}

@Override
public void onNothingSelected(AdapterView<?> parent) {
Toast.makeText(MainActivity.this, "什么都没选", Toast.LENGTH_SHORT)
.show();
}
});

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: