第5章(5) 下拉框(Spinner)

分类:C#、Android、VS2015;

创建日期:2016-02-07

下拉列表框Spinner的用法和WinForms中ComboBox的用法非常相似,在Android应用中使用频次也相当高,因此必须熟练掌握它的基本用法。

一般在单独的XML中声明下拉列表可选项,这样更具有通用性。

示例5—Demo05Spinner

1、运行截图

2、添加demo05_Spinner.axml文件

在layout文件夹下添加该文件。

<?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:text="选择课程:"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dip"
        android:id="@+id/textView1" />
    <Spinner
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/spinner1" />
    <Button
        android:text="确定"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/buttonOK" />
</LinearLayout>

记住:每次修改布局文件后都要保存。否则在.cs文件中键入代码时无法利用智能提示找到对应的控件。

3、修改String.xml文件

打开values文件夹下的String.xml文件,将其改为下面的内容:

<?xml version="1.0" encoding="utf-8"?>
<resources>
  ……
  <string-array name="CourseItems">
    <item>数据结构</item>
    <item>操作系统</item>
    <item>计算机网络</item>
  </string-array>
</resources>

这一步只是为了让你明白如何将String.xml中定义的数组和设计界面相关联。实际上在.cs文件中直接定义更方便。

4、添加Demo05Spinner.cs文件

在SrcActivity文件夹下添加该文件。

using Android.App;
using Android.OS;
using Android.Widget;

namespace ch05demos.SrcActivity
{
    [Activity(Label = "SpinnerDemo")]
    public class Demo05Spinner : Activity
    {
        private Spinner spinner;
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.demo05_Spinner);
            spinner = FindViewById<Spinner>(Resource.Id.spinner1);
            var adapter = ArrayAdapter.CreateFromResource(
                    this, Resource.Array.CourseItems,
                    Android.Resource.Layout.SimpleSpinnerItem);
            adapter.SetDropDownViewResource(
               Android.Resource.Layout.SimpleSpinnerDropDownItem);
            spinner.Adapter = adapter;
            spinner.ItemSelected += Spinner_ItemSelected;
            var btn = FindViewById<Button>(Resource.Id.buttonOK);
            btn.Click += delegate
            {
                string s = spinner.SelectedItem.ToString();
                Toast.MakeText(this, s, ToastLength.Long).Show();
            };
        }

        private void Spinner_ItemSelected(object sender,
            AdapterView.ItemSelectedEventArgs e)
        {
            string s = string.Format("所选课程为:{0}",
                  spinner.GetItemAtPosition(e.Position));
            Toast.MakeText(this, s, ToastLength.Long).Show();
        }
    }
}

运行观察结果。

时间: 2024-10-07 20:22:14

第5章(5) 下拉框(Spinner)的相关文章

Android 之 下拉框(Spinner)的使用-转

下拉列表 Spinner. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列表将所有可选的项列出来.供用户选择. Demo如下,可以留作参考 一.使用数组作为数据源 1.新建一个android的工程 2.工程的layout.xml文件如下:声明一个TextView控件和一个Spinner控件 Xml代码   <?xml version="1.0" encoding="utf-8"?> <LinearLayou

Android零基础入门第46节:下拉框Spinner

上一期学习了GridView的使用,你已经掌握了吗?本期一起来学习Spinner的使用. 一.认识Spinner Spinner其实就是一个列表选择框.不过Android的列表选择框并不需要显示下拉列表,而是相当于弹出一个菜单供用户选择. Spinner 与 Gallery 都继承了AbsSpinner,AbsSpinner 继承了AdapterView,因此它也表现出AdapterView的特征:只要为AdapterView提供Adapter即可. Spinner支持的常用XML属性及相关方法

Android 之 下拉框(Spinner)的使用

转自:http://www.oschina.net/question/54100_33274 出处:http://imshare.iteye.com/blog/770950 下拉列表 Spinner. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列表将所有可选的项列出来.供用户选择. Demo如下,可以留作参考 一.使用数组作为数据源 1.新建一个android的工程 2.工程的layout.xml文件如下:声明一个TextView控件和一个Spinne

下拉框spinner

repositories { flatDir { dirs 'libs' //就是你放aar的目录地址 maven { url "https://jitpack.io" } }}dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android

Android实现三级联动下拉框 下拉列表spinner的实例

主要实现办法:动态加载各级下拉值的适配器 在监听本级下拉框,当本级下拉框的选中值改变时,随之修改下级的适配器的绑定值              XML布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_

android:Spinner(下拉框)控件的使用

1.效果图 2.创建页面文件(main.xml) 1 <Spinner 2 android:id="@+id/spinner1" 3 android:layout_width="match_parent" 4 android:layout_height="wrap_content" /> 5 6 <TextView 7 android:id="@+id/tvResult" 8 android:layout_w

spinner下拉框组件

方法一代码如下: <string-array name="city_name"> <item>浙江</item> <item>上海</item> <item>北京</item> </string-array> <Spinner android:id="@+id/citySelect" android:layout_width="fill_parent&qu

Android 自定义下拉框的实现 Spinner

下拉框布局  a_spinner_checked_text.xml <?xml version="1.0" encoding="utf-8"?><CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" android:layout_width="

Android自学笔记之Spinner下拉框的功能、使用

Spinner: 是类似下拉列表的一种控件,用户从中选择相应选项! Spinner中的数据需要使用Adapter(适配器)填充. 使用: 布局文件activity_main.xml: <span style="font-family:KaiTi_GB2312;font-size:18px;"><Spinner android:id="@+id/spinner" android:layout_width="match_parent"

Android UI自定义Spinner下拉框(用popuwindow实现)-转

定义出第一个图片的布局和弹出框(一个listView)的布局,,这里就不在多说了~ListView需要自己定义一个MyspinnerAdapter~做好这些准备之后,就是弹出框的实现了~  protected void onCreate(Bundle savedInstanceState) { 03         super.onCreate(savedInstanceState); 04         setContentView(R.layout.activity_main); 05