Android常用UI之Spinner

在做应用时,经常要用到下拉列表选择操作,比如我们点击下拉列表选择省市区,选择性别等。我们可以用多种方法实现,比如可以用ListView显示数据,再用onItemClickListner()事件来处理选择操作。不过更好的选择是用Android自带的下拉列表控件Spinner。

--------------------------超简单布局--------------------------------------------------

<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/view_city"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="@string/hello_world" />

<Spinner

android:id="@+id/my_pinner"

android:layout_width="fill_parent"

android:layout_height="wrap_content" />

</LinearLayout>

-------------------------代码实现------------------------------------

public class MainActivity extends Activity {

/**文字显示TextView*/

private TextView mTextView;

/**下拉列表Spinner */

private Spinner mSpinner;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

findViewById();

}

/**初始化控件*/

private void findViewById() {

mTextView = (TextView) findViewById(R.id.view_city);

mSpinner = (Spinner) findViewById(R.id.my_spinner);

mSpinner.setOnItemSelectedListener(new DefultOnItemSelectedListener());

mSpinner.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_checked, getData()));

}

/**自定义选择事件类 */

class DefultOnItemSelectedListener implements Spinner.OnItemSelectedListener {

@Override

public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

mTextView.setText(parent.getItemAtPosition(position).toString());

}

@Override

public void onNothingSelected(AdapterView<?> parent) {

//暂未处理

}

};

/**设置些初始数据*/

private List<String> getData() {

List<String> list = new ArrayList<String>();

for (int i = 0; i < 10; i++) {

list.add("ldm_" + i);

}

return list;

}

}

时间: 2024-10-05 05:50:50

Android常用UI之Spinner的相关文章

android常用UI使用案例:Spinner

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orien

Android常用UI组件 - Button

按钮(Button)是Android当中一个常用的UI组件,很小但是在开发中最常用到.一般通过与监听器结合使用,从而触发一些特定事件. Button继承了TextView.它的功能就是提供一个按钮,这个按钮可以供用户点击,当用户对按钮进行操作的时候,触发相应事件,如点击,触摸.一 般对于一个按钮而言,用的最多的就是点击事件,Button间接继承自View,而Android UI中的所有事件,都是定义在View中的. 实例:ButtonDemo 运行效果: 代码清单: 布局文件:main.xml

Android常用UI组件 - ListView

列表视图(ListView)是Android当中一个非常重要的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示. 列表的显示需要三个元素: 1.ListVeiw 用来展示列表的View. 2.适配器 用来把数据映射到ListView上的中介. 3.数据 具体的将被映射的字符串,图片,或者基本组件. 首先介绍"适配器"这个基础概念.在列表中定义的数据都通过"适配器"来映射到ListView上,ListView中常用的适配器有两种: ArrayAdap

android常用组件之Spinner

Spinner是下拉列表框,用户可以通过该控件从所列item中进行选择,还可以触发item的监听事件. 该实例通过ArrayAdapter类创建了含有30个item的下拉列表,当用户从所列的item中进行选择后,会弹出一个消息框,提示用户所选条目.注意spinner条目监听方法是setOnItemSelectedListener(),而不是setOnItemClickListener(),如果使用setOnItemClickListener()方法会出现秒退现象. 首先是布局文件,添加一个Spi

Android常用UI组件 - EditText

EditText是接受用户输入信息的最重要Android UI组件,可以利用EditText.getText()获取它的文本内容. 实例:EditTextDemo 运行效果: 代码清单: 布局文件:main.xml <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android&quo

android常用UI组件 学习整理

AutoCompleteTextView  自动完成输入框  实现输入提示列表供选择 GridView 网格列表 ExpandableListView 可折叠列表组件 Spinner 下拉列表选择框 Gallery 画廊  实现滑动操作的图片集 AdapterViewFlipper 实现图片轮播 StackView 堆叠视图 ProgressBar 进度条 SeekBar 拖动条 RatingBar  星级评分条 ViewAnimator View切换时表现出动画效果 ImageSwitcher

Android常用UI组件 - TextView

布局文件:main.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" andr

Android常用UI之Toolbar

转载请注明出处:http://blog.csdn.net/h_zhang/article/details/51232773 Android3.0之后引入了ActionBar控件,但是由于ActionBar操作的诸多不便,并且官方也在一定程度上承认ActionBar限制了android app设计与开发的弹性.所以google官方建议使用Toolbar代替ActionBar,Toolbar比ActionBar使用起来更加灵活.而在material design中也对其做了名称的定义:app bar

android常用UI使用案例:AutoCompleteTextView

package com.test.androidui; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle s