android 30 下拉列表框:ArrayAdapter和Spinner.
package com.sxt.day05_04; import android.os.Bundle;
import android.app.Activity;
import android.content.res.Resources;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.AdapterView.OnItemSelectedListener; public class MainActivity extends Activity implements OnItemSelectedListener{
Spinner mspinYear,mspinMonth;
ArrayAdapter<CharSequence> mAdapterYear,mAdapterMonth;
String[] mYears,mMonths,mDays;
int mYear=2000;//初始年份
int mMonth=1;//初始月份 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initData();
initView();
} private void initView() {
mspinYear=(Spinner) findViewById(R.id.spinYear);
//给mspinYear创建一个适配器,R.array.years是要加入进去的字符串数组资源,android.R.layout.simple_list_item_1是显示的列表项
mAdapterYear=ArrayAdapter.createFromResource(this, R.array.years, android.R.layout.simple_list_item_1);
//设置适配器
mspinYear.setAdapter(mAdapterYear);
mspinYear.setOnItemSelectedListener(this); } private void initData() {
Resources res = getResources();//获取资源中定义的数组
mYears=res.getStringArray(R.array.years);
mMonths=res.getStringArray(R.array.months);
mDays=res.getStringArray(R.array.days);
} @Override
//parent是Spinner,view是点击的某一项,
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
switch (parent.getId()) {
case R.id.spinYear:
mYear=Integer.parseInt(mYears[position]);
if(mMonth==2&&(mYear%400==0 || mYear%4==0 && mYear%100!=0)){
Toast.makeText(MainActivity.this, mDays[0]+"天", 2000).show();
}else{
Toast.makeText(MainActivity.this, mDays[mMonth], 2000).show();
}
break;
case R.id.spinMonth: break;
}
} @Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub } }
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" > <TextView
android:id="@+id/tvYear"
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择年份" />
<Spinner
android:id="@+id/spinYear"
android:layout_toRightOf="@id/tvYear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:prompt="@string/prompt_year"
android:spinnerMode="dialog"/> 下拉之后以dialog对话框显示
<TextView
android:id="@+id/tvMonth"
android:layout_marginTop="10dp"
android:layout_below="@id/spinYear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择月份" />
<Spinner
android:id="@+id/spinMonth"
android:layout_toRightOf="@id/tvMonth"
android:layout_below="@id/spinYear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:prompt="@string/prompt_year"
android:spinnerMode="dialog"/> 下拉之后以dialog对话框显示 </RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<resources> <string name="app_name">Day05_04-ArrayAdapterAndSpinnerDemo</string>
<string name="action_settings">Settings</string>
<string name="prompt_year">选择年份</string>
<string name="prompt_month">选择月份</string>
<string-array name="years">
<item>2000</item>
<item>2001</item>
<item>2002</item>
<item>2003</item>
<item>2004</item>
<item>2005</item>
<item>2006</item>
<item>2007</item> </string-array>
<string-array name="months">
<item>1</item>
<item >2</item>
<item >3</item>
<item >4</item>
<item >5</item>
<item >6</item>
<item >7</item>
<item >8</item>
<item >9</item>
<item >10</item>
<item >11</item>
<item >12</item> </string-array>
<string-array name="days">
<item >29</item>
<item >31</item>
<item >28</item>
<item >31</item>
<item >30</item>
<item >31</item>
<item >30</item>
<item >31</item>
<item >31</item>
<item >30</item>
<item >31</item>
<item >30</item>
<item >31</item> </string-array>
</resources>
android 30 下拉列表框:ArrayAdapter和Spinner.的更多相关文章
- Android开发之自己定义Spinner样式的效果实现(源码实现)
android系统自带的Spinner样式是远远满足不了我们实际开发过程中对Spinner UI风格的要求,因此我们肯定须要为了切合整个应用的风格,改动我们的Spinner样式.系统给我们提供了两种常 ...
- android下拉选择框spinner
spinner是什么东西呢?有点像下拉菜单,其实是一个弹出窗口,但是是可以进行进一步操作的弹出窗口.你点击那个三角形的符号,弹出一个窗口,通常是列表,然后进行操作. 它在xml文件中的定义和其它控件没 ...
- Android 之 下拉框(Spinner)的使用
下拉列表 Spinner. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列表将所有可选的项列出来.供用户选择. Demo如下,可以留作参考 一.使用数组作为数 ...
- 【转】Android 之 下拉框(Spinner)的使用
原文网址:http://imshare.iteye.com/blog/770950 下拉列表 Spinner. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列 ...
- Android 之 下拉框(Spinner)的使用-转
下拉列表 Spinner. Spinner的使用,可以极大提高用户的体验性.当需要用户选择的时候,可以提供一个下拉列表将所有可选的项列出来.供用户选择. Demo如下,可以留作参考 一.使用数组作为数 ...
- Android适配器之ArrayAdapter、SimpleAdapter和BaseAdapter的简单用法与有用代码片段(转)
摘自:http://blog.csdn.net/shakespeare001/article/details/7926783 Adapter是连接后端数据和前端显示的适配器接口,是数据Data和UI( ...
- Android --ListView使用ArrayAdapter
1.继承ArrayAdapter public class TimerDataAdapter extends ArrayAdapter<TimerDataListItem> { //数据I ...
- Android 中万能的 BaseAdapter(Spinner,ListView,GridView) 的使用!
大家好!今天给大家讲解一下BaseAdapter(基础适配器)的用法,适配器的作用主要是用来给诸如(Spinner,ListView,GridView)来填充数据的.而(Spinner,ListVie ...
- Android -- ListView与ArrayAdapter、SimpleAdapter
对于ArrayAdapter,里面虽然能添加图片,但只能是相同的图片. 废话不多说: 布局&&list的item布局 ...
随机推荐
- python读取excel文件
一.xlrd的说明 xlrd是专门用来在python中读取excel文档的模块,使用前需要安装. 可以到这https://pypi.python.org/pypi/xlrd进行下载tar.gz文件,然 ...
- Java客户端协议处理框架简介
无论FTP客户程序,还是HTTP客户程序,或是其他基于特定应用层协议的客户程序,在与远程服务器通信时,都需要建立与远程服务器的连接,然后发送和接收与协议相符的数据.客户程序还需要对服务器发送的数据进行 ...
- 金山网络2014春季Android实习生招聘-成都站-笔试第一题
实现单例模式,并实现方法int getResult(float a),将a*8后返回. package jinshanwangluo.exam; /** * @author guoxm * @date ...
- 一个消除if语句的例子
// 一个按钮点击事件,判断点击按钮是那一个显示出他的信息 - (IBAction)buttonPressed:(id)sender { if (sender == self.leftButton) ...
- 让chrome浏览器快的不要不要的
Chrome 已经成了很多人的主力浏览器,你可能被它的简洁快速所吸引,但它日益丰富的「扩展」,你可能从来都没有接触过,而事实上,很多扩展可以挖掘出 Chrome 的潜能,让它变得前所未有的强大.有哪些 ...
- iOS-NSTimer-pause-暂停-引用循环
7月26日更新: 今天更新的主要目的是因为暂停!!!! 注:不推荐使用,并不是这样有错,而是因为这样写代码的规范问题,代码要有可读性,遵循代码即文档,使用暂停在团队合作中可能会带来误会,非必要不建议使 ...
- 14.6.7 Configuring the Number of Background InnoDB IO Threads 配置InnoDB IO Threads的数量
14.6.7 Configuring the Number of Background InnoDB IO Threads 配置InnoDB IO Threads的数量 InnoDB 使用后台线程来服 ...
- Maven学习(1) - Maven入门
home index:http://maven.apache.org/ download:http://maven.apache.org/download.cgi install: http://ma ...
- 【转】 学习ios(必看经典)牛人40天精通iOS开发的学习方法【2015.12.2
原文网址:http://bbs.51cto.com/thread-1099956-1.html 亲爱的学员们: 如今,各路开发者为淘一桶金也纷纷转入iOS开发的行列.你心动了吗?想要行动吗?知道如何做 ...
- 【C++】冒泡排序、插入排序、快速排序
#include<iostream> using namespace std; void BubbleSort(int *a,int istart,int len)//冒泡排序 { //a ...