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布局 ...
随机推荐
- MYSQL 错误 :Out of resources when opening file './datagather/mx_domain#P#p178.MYD' (Errcode: 24) 解决办法
出现Out of resources when opening file './xxx.MYD' (Errcode: 24)错误是因为打开的文件数超过了my.cnf的--open-files-limi ...
- iOS 8创建交互式通知-备
iOS 8提供了一个令人兴奋的新API来创建交互式通知(interactive notifications),它能让你在你的应用之外为用户提供额外的功能.我发现网上还没有关于如何实现它的比较好的示例教 ...
- "Invalid bound statement (not found): com.sitech.admin.dao.TbOpenAbilityInfoDao.findAbilityReadyUp"mybatis配置文件bug
问题描述: 通常在正常启动某项工程后操作某个功能时抛出的bug: org.apache.ibatis.binding.BindingException: Invalid bound statement ...
- Ubuntu下安装nvidia显卡驱动
layout: post title: Ubuntu下安装nvidia显卡驱动 date: 2015-10-02 17:19:06 categories: 常用命令 tags: 显卡 驱动 最近一直在 ...
- hexo 适合前端 geek 的博客
原文出自:http://www.qiangji.tk/hexo%E9%80%82%E5%90%88%E5%89%8D%E7%AB%AFgeek%E7%9A%84%E5%8D%9A%E5%AE%A2/ ...
- 通过 DevOps 整合开发和应用安全管道
[编者按]作者 Aaron Volkmann 是 CERT Division 高级研究员,通过提出了一种集成安全系统到 CI/CD 的方法,让机构保持快速部署到生产环境能力的同时,也大幅度降低安全隐患 ...
- Linux学习笔记27——共享内存
一 共享内存 共享内存是由IPC为进程创建的一个特殊的地址范围,它将出现在该进程的地址空间中.其他进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址.如果某个进程向 ...
- Unity3d 基于物理渲染Physically-Based Rendering之最终篇
前情提要: 讲求基本算法 Unity3d 基于物理渲染Physically-Based Rendering之specular BRDF plus篇 Unity3d 基于物理渲染Physically-B ...
- [IoLanguage]Io Programming Guide[转]
Io Programming Guide Introduction Perspective Getting Started Downloading Installing Binaries Ru ...
- 一个Tomcat及一个ip,绑定不同的域名,各个域名访问各自不同应用程序的配置方法
http://nickandmiles.blog.163.com/blog/static/23422123201110151492166/ 条件是:这样一种实际情况是,就一台服务器,当公网的IP地址也 ...