书中只是简单写了选择的界面,没有写出选择之后的结果显示,我做了进一步功能。

MainActivity.java

  1. public class MainActivity extends Activity
  2. {
  3. Spinner spinner;
  4. Spinner spinner1;
  5. TextView tv;
  6. String[] arr = { "孙悟空", "猪八戒", "唐僧" };
  7. Button butt;
  8. int Position;
  9. @Override
  10. public void onCreate(Bundle savedInstanceState)
  11. {
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.main);
  14. // 获取界面布局文件中的Spinner组件
  15. spinner = (Spinner) findViewById(R.id.spinner);
  16. spinner1 = (Spinner) findViewById(R.id.spin1);
  17. tv = (TextView) findViewById(R.id.tv);
  18. butt = (Button) findViewById(R.id.butt);
  19. // 创建ArrayAdapter对象
  20. ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
  21. android.R.layout.simple_list_item_multiple_choice, arr);
  22. // 为Spinner设置Adapter
  23. spinner.setAdapter(adapter);
  24. butt.setOnClickListener(new View.OnClickListener() {
  25. @Override
  26. public void onClick(View v) {
  27. String string=spinner.getSelectedItem().toString();
  28. String string1 = spinner1.getSelectedItem().toString();
  29. tv.setText(string1+" + "+string);
  30. }
  31. });
  32. }
  33. }

XML文件

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent">
  6. <!-- 定义了一个Spinner组件,指定显示该Spinner组件的数组 -->
  7. <Spinner
  8. android:id="@+id/spin1"
  9. android:layout_marginTop="40dp"
  10. android:layout_width="match_parent"
  11. android:layout_height="wrap_content"
  12. android:entries="@array/books"
  13. android:prompt="@string/tip"/>
  14. <Spinner
  15. android:id="@+id/spinner"
  16. android:layout_width="match_parent"
  17. android:layout_height="wrap_content"
  18. android:prompt="@string/tip"/>
  19.  
  20. <TextView
  21. android:id="@+id/tv"
  22. android:layout_marginTop="30dp"
  23. android:layout_gravity="center_horizontal"
  24. android:text="选择"
  25. android:textColor="@android:color/holo_red_light"
  26. android:textSize="30sp"
  27. android:layout_width="wrap_content"
  28. android:layout_height="wrap_content"/>
  29. <Button
  30. android:id="@+id/butt"
  31. android:layout_marginTop="30dp"
  32. android:text="确认"
  33. android:textSize="30dp"
  34. android:layout_gravity="center_horizontal"
  35. android:layout_width="wrap_content"
  36. android:layout_height="wrap_content"/>
  37. </LinearLayout>

效果:

Spinner功能和用法的更多相关文章

  1. Spinner --- 功能和用法

    第一种方法: 使用Spinner时需要配置选项的资源文件,资源文件为一个string类型的数组 在res下的values文件夹下新建一个xml文件 内容为: <?xml version=&quo ...

  2. Android 自学之画廊视图(Gallery)功能和用法

    Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框.他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显 ...

  3. 搜索框(SearchView)的功能与用法

    SearchView是搜索框组件,它可以让用户在文本框内输入汉字,并允许通过监听器监控用户输入,当用户用户输入完成后提交搜索按钮时,也通过监听器执行实际的搜索. 使用SearchView时可以使用如下 ...

  4. 数值选择器(NumberPicker)的功能与用法

    数值选择器用于让用户输入数值,用户既可以通过键盘输入数值,也可以通过拖动来选择数值.使用该组件常用如下三个方法. setMinValue(int minVal):设置该组件支持的最小值. setMax ...

  5. 日历视图(CalendarView)组件的功能和用法

    日历视图(CalendarView)可用于显示和选择日期,用户既可选择一个日期,也可通过触摸来滚动日历.如果希望监控该组件的日历改变,可调用CalendarView的setOnDateChangeLi ...

  6. 星级评分条(RatingBar)的功能和用法

    星级评分条与拖动条有相同的父类:AbsSeekBar,因此它们十分相似.实际上星级评分条与拖动条的用法.功能都十分接近:它们都是允许用户通过拖动条来改变进度.RatingBar与SeekBar最大区别 ...

  7. 拖动条(SeekBar)的功能和用法

    拖动条和进度条非常相似,只是进度条采用颜色填充来表明进度完成的程序,而拖动条则通过滑块的位置来标识数值——而且拖动条允许用户拖动滑块来改变值,因而拖动条通常用于对系统的某种数值进行调节,比如调节音量等 ...

  8. StackView的功能和用法

    StackView也是AdapterViewAnimator的子类,它也用于显示Adapter提供的系列View.SackView将会以“堆叠(Stack)”方式来显示多个列表项. 为了控制Stack ...

  9. MySQL常用存储引擎功能与用法详解

    本文实例讲述了MySQL常用存储引擎功能与用法. MySQL存储引擎主要有两大类: 1. 事务安全表:InnoDB.BDB. 2. 非事务安全表:MyISAM.MEMORY.MERGE.EXAMPLE ...

随机推荐

  1. 五种方法实现Java的Singleton单例模式

    面试的时候经常会问到Java的单例模式,这道题能很好的考察候选人对知识点的理解程度.单例模式要求在系统运行时,只存在唯一的一个实例对象. 下面我们来详细剖析一下其中的关键知识点,并介绍五种实现方法,以 ...

  2. C++Primer笔记-----继承

    ==========================================================================day11 面向对象程序设计============ ...

  3. Haskell语言学习笔记(69)Yesod

    Yesod Yesod 是一个使用 Haskell 语言的 Web 框架. 安装 Yesod 首先更新 Haskell Platform 到最新版 (Yesod 依赖的库非常多,版本不一致的话很容易安 ...

  4. pyspark dataframe 格式数据输入 做逻辑回归

    该方法好处是可以调节阈值,可调参数比其他形式模型多很多. [参照]http://blog.csdn.net/u013719780/article/details/52277616 [3种模型效果比较: ...

  5. express + mongodb 搭建一个简易网站 (五)

    前面已经将导航中的“所有宝贝”页面连上了mongodb,现在我们就把其他的页面脸上数据库,将整个网站全部实现. 打开routes文件,找到jacket.js,将里面的代码修改如下: var expre ...

  6. Redis事务的简单理解

    Redis事务的命令如下所示: 先以 MULTI 开始一个事务, 然后将多个命令入队到事务中, 最后由 EXEC 命令触发事务, 一并执行事务中的所有命令 示例如下: //开始一个事务 > MU ...

  7. hdoj Max Sum Plus Plus(DP)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1024 题意:----最大M子段和问题给定由 n个整数(可能为负整数)组成的序列a1,a2,a3,……, ...

  8. luoguP1004 方格取数(四维DP)

    题目链接:https://www.luogu.org/problemnew/show/P1004 思路: 这道题是四维DP的模板题,与luoguP1006传纸条基本相似,用f[i][j][k][l]表 ...

  9. Java的线程同步

    synchronized获取的锁是对象,而不是函数或语句块. 项目结构 资源类 import java.util.concurrent.TimeUnit; public class myResourc ...

  10. ef linq 访问视图返回结果重复

    根据检测到的语句查询和linq查询出来的结果不一致,linq查询出重复的数据,原因不明,已改用ef直接查询视图,也许以后某一天突然就解决了,先mark下.