android使用datepicker计算年龄

本文实例为大家分享了android使用datepicker计算年龄的具体代码,供大家参考,具体内容如下

界面如下,凑合看吧

点击选择年龄的按钮时弹出datepicker日历选择器

在日历选择器上选中您的年龄点击完成

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"
 android:paddingBottom="@dimen/activity_vertical_margin"
 android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"
 android:paddingTop="@dimen/activity_vertical_margin"
 tools:context="com.example.datepicker.MainActivity" >

 <TextView
  android:id="@+id/editText"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerHorizontal="true"
  android:layout_centerVertical="true"
  android:hint="选择你的出生年月" />

 <Button
  android:id="@+id/select"
  android:onClick="SelectAge"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignBaseline="@+id/editText"
  android:layout_alignBottom="@+id/editText"
  android:layout_alignParentLeft="true"
  android:text="选择年龄" />

</RelativeLayout>

mainActivity的代码如下:

package com.example.datepicker;

import java.text.SimpleDateFormat;
import java.util.Date;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.os.Bundle;
import android.view.View;

import android.view.Window;
import android.widget.DatePicker;

import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity implements OnDateSetListener {
 private TextView mText;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  requestWindowFeature(Window.FEATURE_NO_TITLE);
  setContentView(R.layout.activity_main);
  mText = (TextView) findViewById(R.id.editText);
 }

 public void SelectAge(View v) {
// 这设置默认显示的日期 我选的2000年1月1日       月这是从0开始 0 是一月
  new DatePickerDialog(MainActivity.this, this, 2000, 0, 1).show();

 }

 @Override
 public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
  // TODO Auto-generated method stub
//  选择1月会是0 要把月份+1
  Toast.makeText(MainActivity.this, "你选择的是" + year + "年" + (monthOfYear+1) + "月" + dayOfMonth + "日",
    Toast.LENGTH_LONG).show();
  SimpleDateFormat format = new SimpleDateFormat("yyyy");
  int NowYear = Integer.parseInt(format.format(new Date()));
  mText.setText("你今年" + (NowYear - year) + "岁");

 }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • android之datepicker控件的用法

    如下所示: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:lay

  • android指定DatePickerDialog样式并不显示年的实现代码

    有很多地方要用到DatePickerDialog.但有时项目用到的主题样式是很丑的样式,显示出来的真丑. 而我们真正想要的样式是这样的. 这个就漂亮多了.而且很多的时候都不需要显示"年",下面看通过指定主题来显示自己想要的样式,并且通过反射机制来隐藏"年",而且可以举一反三,对这上面的东西做任务的修改. private void showDatePickerDialog() { Calendar calendar = Calendar.getInstance();

  • Android DatePicker和DatePickerDialog基本用法示例

    本文实例讲述了Android DatePicker和DatePickerDialog基本用法.分享给大家供大家参考,具体如下: DatePicker用来设置手机的时间和闹钟 1.添加一个按钮控件在配置文件中,然后给该按钮添加事件,使其能够打开DatePicker //下面采用匿名内部类的方式 btn.setOnClickListener(new Button.OnClickListener(){ @Override public void onClick(View v) { //通过下面的方法可

  • android中DatePicker和TimePicker的使用方法详解

    本文以实例讲述了android中DatePicker和TimePicker的使用方法,具体步骤如下: 下面是实现具体功能的代码,其中main.xml代码为: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width=&quo

  • Android日期选择器对话框DatePickerDialog使用详解

    调用Android原生日期选择器对话框就是DatePickerDialog,具体内容如下 在Android4.4系统上效果如图: 在Android5.0以上效果如图: 1.Activity的onCreate方法中获取当时的年,月,日 Calendar ca = Calendar.getInstance(); mYear = ca.get(Calendar.YEAR); mMonth = ca.get(Calendar.MONTH); mDay = ca.get(Calendar.DAY_OF_M

  • android使用datepicker计算年龄

    本文实例为大家分享了android使用datepicker计算年龄的具体代码,供大家参考,具体内容如下 界面如下,凑合看吧 点击选择年龄的按钮时弹出datepicker日历选择器 在日历选择器上选中您的年龄点击完成 activity_main.xml的代码如下: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.an

  • Android编程实现计算两个日期之间天数并打印所有日期的方法

    本文实例讲述了Android编程实现计算两个日期之间天数并打印所有日期的方法.分享给大家供大家参考,具体如下: 以下代码是计算两个日期之间的天数,并打印所有日期 注:开始时,增加天数时,一天的毫秒数直接用24*60*60*1000来逐步增加天数,再测试时发现,当两个日期之间的天数超过24天时,打印的日期反而在开始日期之前了,(如打印2016/12/18-2017/1/23,打印的日期反而有2016/12/1),后来发现原因在于24*60*60*1000是一个int值,int值的取值范围在2的31

  • C#精确计算年龄的方法分析

    本文实例讲述了C#精确计算年龄的方法.分享给大家供大家参考.具体如下: 该源码在vs2010测试通过 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; namespace PublicClass {     public static class CalculationDate     {         /// <summary>         /// 由两个日期计算出年龄(岁.月.天

  • php计算年龄精准到年月日

    本文实例讲述了php计算年龄精准到年月日的方法.分享给大家供大家参考.具体如下: <?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ class Age { /** * 计算年龄

  • php根据生日计算年龄的方法

    本文实例讲述了php根据生日计算年龄的方法.分享给大家供大家参考.具体如下: <?php function birthday($birthday){ $age = strtotime($birthday); if($age === false){ return false; } list($y1,$m1,$d1) = explode("-",date("Y-m-d",$age)); $now = strtotime("now"); list

  • php简单计算年龄的方法(周岁与虚岁)

    本文实例讲述了php简单计算年龄的方法.分享给大家供大家参考,具体如下: /** * $date是时间戳 * $type为1的时候是虚岁,2的时候是周岁 */ function getAgeByBirth($date,$type = 1){ $nowYear = date("Y",time()); $nowMonth = date("m",time()); $nowDay = date("d",time()); $birthYear = date

  • Java中使用LocalDate根据日期来计算年龄的实现方法

    Java中和日期直接相关的类有很多,平时最常用到的就是java.util package下面的Date和Calendar,需要用到格式的时候还会用到java.text.SimpleDateFormat 首先吐槽一下,Date和Calendar实际用起来还是有一些别扭的,刚开始用的时候不熟悉,老是分不清Date和Calendar类的具体用法和区别. 而且Calendar类的set方法来设置日期时又有一些反人类,设置月份的时候总是要脑补一下减去1,比如要设置为2018年1月6日就要设置成2018,0

  • Mysql中通过生日计算年龄的多种方法

    以前使用mysql不是很多,对mysql的函数也不是很熟悉,遇到这个问题第一时间百度搜索,搜索到这两种方法,这两种方法是排在百度第一条的博客. 方法一 SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)), '%Y')+0 AS age 方法一,作者也说出了缺陷,就是当日期为未来日期时结果为0,而不是负数:这里使用了5个函数和两个运算符. 方法二 SELECT DATE_FORMAT(NOW(), '%Y') - DATE_

随机推荐