2014-11-6Android学习------Spinner下拉选择框控件学习

news/2024/7/4 13:26:51

写一篇文章很辛苦啊!!!

转载请注明,联系请邮件nlp30508@qq.com


我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,今天的学习源码是网上找的源码 百度搜就知道很多下载的地方  网上源码的名字叫:activity切换特效.zip我的博客写的比较乱,如果本篇文章没有看懂,

请先看上篇文章,地址:http://blog.csdn.net/u014737138/article/details/40862967


上篇文章我们学习了animation动画的四种情况,在其中我们用到了一个控件Spinner

Spinner的作用就是从下拉选择框中选择条目,而不是输入,具体的效果如下:


废话就不多说了,接下来,我们正式进入这个控件的学习:

一.需要在布局文件中定义该控件

<strong><span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/Country" />

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/City" />

    <Spinner
        android:id="@+id/spinner2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout></span></strong>

这个布局文件中我们定义两个Spinner  ,一个用来显示国家,一个用来显示城市,实现这种下拉列表控件的数据采用两种常用的方法

二.在activity处理该控件

1.找到资源,也就是找到相对应的控件

private Spinner spinner;
private Spinner spinner2;

2.初始化Spinner控件

方法一:直接在类中动态加载

private static final String[] mCountries = {"China","Russia","Germany","Ukraine","Belarus","USA"};

private List<String> allcountries;

allcountries = new ArrayList<String>();
for(int i=0;i<mCountries.length;i++){
allcountries.add(mCountries[i]);
}

aspnCountries = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,allcountries);

方法二:采用XML文件的方式预定义的方法

首先就需要在资源文件中定义这个文件

1)arrays.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="countries">
        <item >上海</item>
        <item >北京</item>
        <item >华盛顿</item>
    </string-array>
    
</resources>

2)构造适配器来填充数据:

ArrayAdapter<CharSequence> cityAdapter = ArrayAdapter.createFromResource(this, R.array.countries, android.R.layout.simple_spinner_item);
cityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(cityAdapter);

注意这里使用的构造方法:

 ArrayAdapter.createFromResource(this, R.array.countries, android.R.layout.simple_spinner_item);

从自己文件中创造,参数分别是上下文,对应的arrays资源文件的id,下拉列表显示的方法,默认是没有UI展开的方式,


做完了这些基本就完成 了Spinner控件的处理了,下面看看效果:



该代码的源码下载地址为:http://download.csdn.net/detail/u014737138/8129237


http://www.niftyadmin.cn/n/1974374.html

相关文章

诡异的 unnest 函数

为什么80%的码农都做不了架构师&#xff1f;>>> 发现函数 unnest 定义如下&#xff1a; CREATE OR REPLACE FUNCTION unnest(anyarray)RETURNS SETOF anyelement AS array_unnestLANGUAGE internal IMMUTABLE STRICTCOST 1ROWS 100; 为了可读性&#xff0c;这是还原…

简简单单小文章-声明

前言 好长时间也没写文章了&#xff0c;原因有很多&#xff0c;就不在这说了&#xff0c;好不容易有个空了就拿起了java基础翻看着&#xff0c;然后也就有了这篇文章。 正文 java中常用的声明有三种方式&#xff0c;那么这三种方式有什么区别呢&#xff1f;对于jvm熟悉的朋友…

2014-11-6Android学习------Spinner下拉选择框控件学习(二)---监听事件

写一篇文章很辛苦啊&#xff01;&#xff01;&#xff01; 转载请注明&#xff0c;联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习&#xff0c;这样比较直观&#xff0c;非常清楚的看清效果&#xff0c;觉得很好&#xff0c;今天的学习源码是网上找的源码 百度搜…

[python]代码中包含中文,提示:SyntaxError: Non-ASCII character '\xcd'

解决方法&#xff1a; 把文件编码方式改为gbk即可。在代码开头写上&#xff1a; # codinggbk 转载于:https://www.cnblogs.com/sophia194910/p/5085218.html

一文彻底搞懂正向代理和反向代理

前言 多长时间不写博客了&#xff1f;反正一双手是数不过来了&#xff0c;今天就顺手写点小知识点。主要想说的是正向代理和反向代理。 正文 代理 首先先说概念&#xff1a; 代理的概念是什么呢&#xff1f; 百度百科提供的说明&#xff1a; 代理服务器&#xff08;Proxy S…

2014-11-6Android学习------在手机上用鼠标绘图的处理---贝塞尔曲线(一)

写一篇文章很辛苦啊&#xff01;&#xff01;&#xff01; 转载请注明&#xff0c;联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习&#xff0c;这样比较直观&#xff0c;非常清楚的看清效果&#xff0c;觉得很好&#xff0c;今天的学习源码是网上找的源码 百度搜…

JPA数据操作汇总,常用的数据操作方法都在这了

前言 写博客总结&#xff0c;最近公司进新人&#xff0c;写了个内部文档顺便整理了一下jap的数据操作demo 正文 第一种方式&#xff1a; 根据客户名称查询客户&#xff0c;使用jpql的形式查询&#xff0c;配置jpql语句&#xff0c;使用的Query注解 Query(value"from …

nginx将svn请求转发到apache实现svn http请求

需要安装apache libapache2-svn模块&#xff0c;nginx&#xff0c;svn。安装过程略过。 记录比较重要几点&#xff08;不按先后&#xff09;&#xff1a; 安装apache的svn模块 sudo apt-get install libapache2-svn apahce的svn模块,通过他实现svn权限等问题。 apt-get …