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布局 ...
随机推荐
- javascript 与 java
- theano中的logisticregression代码学习
1 class LogisticRegression (object): 2 def __int__(self,...): 3 4 #定义一些与逻辑回归相关的各种函数 5 6 def method1( ...
- RedHat 6.5 离线安装 apache2.4.23
第一部分:安装gcc等 rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm rpm -ivh cpp- ...
- 横向技术分析C#、C++和Java优劣
转自横向技术分析C#.C++和Java优劣 C#诞生之日起,关于C#与Java之间的论战便此起彼伏,至今不辍.抛却Microsoft与Sun之间的恩怨与口角,客观地从技术上讲,C#与Java都是对传统 ...
- 【POJ2778】AC自动机+矩阵乘法
DNA Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 14758 Accepted: 5716 Descrip ...
- Hibernate之SchemaExport+配置文件生成表结构
首先要生成表,得先有实体类,以Person.java为例: /** * * @author Administrator * @hibernate.class table="T_Person& ...
- Git创建一个自己的本地仓库
如果我们要把一个项目加入到Git的版本管理中,可以在项目所在的目录用git init命令建立一个空的本地仓库,然后再用git add命令把它们都加入到Git本地仓库的暂存区(stage or inde ...
- buffer busy waits
Buffer busy waits 当会话想要访问缓冲区中的数据块,而该数据块正在被其他会话使用时将产生Buffer busy waits事件. 其他会话可能正从数据文件向缓冲器读取同样的数据块,或正 ...
- 【转】Android编译系统详解(三)——编译流程详解
原文网址:http://www.cloudchou.com/android/post-276.html 本文原创作者:Cloud Chou. 欢迎转载,请注明出处和本文链接 1.概述 编译Androi ...
- TCP Socket的通讯框架
http://www.oschina.net/p/simple-socketshttp://www.oschina.net/p/cwsshttp://www.oschina.net/p/tcpprox ...