第21章、OnItemSelectedListener事件(从零开始学Android)
在Android App应用中,OnItemSelectedListener事件也会经常用到,我们一起来了解一下。
基本知识点:OnItemSelectedListener事件
一、界面
1、新建province.xml件。
在“res/values”位置新建province.xml文件。
(1)province.xml文件位置如下图所示:

(2)province.xml内容如下:

(3)代码
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string-array name="provarray">
- <item>河南省</item>
- <item>河北省</item>
- <item>山东省</item>
- <item>山西省</item>
- </string-array>
- </resources>
2、打开“res/layout/activity_main.xml”文件。
(1)分别从工具栏向activity拖出1个下拉列表框Spinner。控件来自Form Widgets。

(2)打开activity_main.xml文件。
- <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"
- tools:context=".MainActivity" >
- <Spinner
- android:id="@+id/province"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_alignParentTop="true"
- android:entries="@array/provarray" />
- </RelativeLayout>
3、界面如下

二、OnItemSelectedListener事件
1、打开“src/com.genwoxue.onitemselected/MainActivity.java”文件。
然后输入以下代码:
- package com.genwoxue.onitemselected;
- import android.os.Bundle;
- import android.app.Activity;
- import android.view.View;
- import android.widget.Spinner;
- import android.widget.Toast;
- import android.widget.AdapterView;
- import android.widget.AdapterView.OnItemSelectedListener;
- public class MainActivity extends Activity {
- //声明Spinner对象
- private Spinner spinProvince=null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- //获取Spinner
- spinProvince=(Spinner)super.findViewById(R.id.province);
- //注册OnItemSelected事件
- spinProvince.setOnItemSelectedListener(new ProvOnItemSelectedListener());
- }
- //OnItemSelected监听器
- private class ProvOnItemSelectedListener implements OnItemSelectedListener{
- @Override
- public void onItemSelected(AdapterView<?> adapter,View view,int position,long id) {
- //获取选择的项的值
- String sInfo=adapter.getItemAtPosition(position).toString();
- Toast.makeText(getApplicationContext(), sInfo, Toast.LENGTH_LONG).show();
- }
- @Override
- public void onNothingSelected(AdapterView<?> arg0) {
- String sInfo="什么也没选!";
- Toast.makeText(getApplicationContext(),sInfo, Toast.LENGTH_LONG).show();
- }
- }
- }

2、最终效果如下:

第21章、OnItemSelectedListener事件(从零开始学Android)的更多相关文章
- 第23章、OnFocuChangeListener焦点事件(从零开始学Android)
在Android App应用中,OnFocuChangeListener焦点事件是必不可少的,我们在上一章的基础上来学习一下如何实现. 基本知识点:OnFocuChangeListener事件 一 ...
- 第24章、OnLongClickListener长按事件(从零开始学Android)
在Android App应用中,OnLongClick事件表示长按2秒以上触发的事件,本章我们通过长按图像设置为墙纸来理解其具体用法. 知识点:OnLongClickListener OnLongCl ...
- 从零开始学android开发-View的setOnClickListener的添加方法
1)第一种,也是最长见的添加方法(一下都以Button为例) Button btn = (Button) findViewById(R.id.myButton); btn .setOnClickLis ...
- 从零开始学android -- Service
废话不多说了,Service是四大组件之一,是一个后台处理长时间运行在主线程不需要依赖ui界面显示的应用组件,切记不能在service中做耗时操作,会阻塞主线程,要做也要在service中开个子线程做 ...
- 从零开始学android开发-项目打包发布
右键项目 选择[android tools]-[export signed application package] 点击[next] 如果没有keystore可以选择[create new keys ...
- 从零开始学android开发-adt-bundle-eclipse下的修改android app名称
eclipse中,打开项目根目录中的AndoirManifest.xml文件,找到如下内容 <application android:allowBackup="true" a ...
- 从零开始学android开发-通过WebService进行网络编程,使用工具类轻松实现
相信大家在平常的开发中,对网络的操作用到HTTP协议比较多,通过我们使用Get或者Post的方法调用一个数据接口,然后服务器给我们返回JSON格式的数据,我们解析JSON数据然后展现给用户,相信很多人 ...
- 从零开始学android开发-通过WebService获取今日天气情况
因为本身是在搞.NET方面的东东,现在在学习Android,所以想实现Android通过WebService接口来获取数据,网上很多例子还有有问题的.参考:Android 通过WebService进行 ...
- 从零开始学android开发-布局中 layout_gravity、gravity、orientation、layout_weight
线性布局中,有 4 个及其重要的参数,直接决定元素的布局和位置,这四个参数是 android:layout_gravity ( 是本元素相对于父元素的重力方向 ) android:gravity (是 ...
随机推荐
- linux中进程亲和性绑定
什么是绑核所谓绑核,其实就是设定某个进程/线程与某个CPU核的亲和力(affinity).设定以后,Linux调度器就会让这个进程/线程只在所绑定的核上面去运行.但并不是说该进程/线程就独占这个CPU ...
- springboot的启动类不能直接放在src/java目录下,不然会报错
jar包的application.yml 会被项目的覆盖,导致找不到原有的配置
- 关于Python解释器
由于Python语言从规范到解释器都是开源的,所以理论上任何人都可以编写Python解释器来执行Python代码 目前存在以下几种主流的Python解释器 CPython CPython是官方版本的解 ...
- django 12天(跨域,文件上传,下载,cookie,session)
django 12天(跨域,文件上传,下载) 跨域 什么是跨域 1.协议不同 2.端口不同 3.主机不同 如何解决跨域 1.安装django-cors-headers模块 2.在settings.py ...
- POJ-3106 Flip and Turn (模拟)
[题目大意] 给你一个n*m的矩阵,然后给你一系列操作,最后让你输出操作后的矩阵. 操作包括: 1:沿主对角线反转 2:沿副对角线反转 H:上下翻转 V:水平翻转 A B C:顺时针90° 180° ...
- Hive 启动报错,需先启动元数据
Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable ...
- git 的右键快捷菜单恢复
最近装了个vs 2017 的社区版的,发现之前安装的git的右键快捷方式不见了,因此在此写备注,只要是git的安装位置是默认位置的,也可以使用此注册表恢复,其他路径请自行修改reg文件 主要是针对gi ...
- windows liver writer下载地址
wlsetup-all.exe 链接:http://pan.baidu.com/s/1bo9pm7X 密码:zchb wlsetup-all简体版.exe 链接:http://pan.baidu.co ...
- ActionProxy相关实现类
package com.opensymphony.xwork2; import com.opensymphony.xwork2.config.Configuration; import com.ope ...
- oracle客户端安装与配置
在进行开发时经常需要连接Oracle数据库,一般的场景是Oracle数据库在远程服务器上,本地计算机通过plsql developer来访问. 这就要求在本地安装好plsql developer,但是 ...