Android 日期选择器月份作为数字

2024-06-28

在 Android DatePicker 中,在某些操作系统中,月份显示为“Jan、Feb、Mar...Dec”,在其他操作系统中,月份显示为 1,2,3..12

有没有办法让它始终保持一致,以便它始终显示 1,2,3.. 12 作为月份?

显示 1,2,3..12 而不是字符串的原因是对各种语言的本地化支持。

Also is it advisable to do so? Thanks. enter image description here


  <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical" > 
<Button
    android:id="@+id/btnChangeDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Change Date" /> 
<TextView
    android:id="@+id/lblDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Current Date (April-10-2012): "
    android:textAppearance="?android:attr/textAppearanceLarge" /> 
    <TextView
    android:id="@+id/tvDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text=""
    android:textAppearance="?android:attr/textAppearanceLarge" /> 
    <DatePicker
     android:id="@+id/dpResult"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" />    

     </LinearLayout>

日期选择器类

import java.util.Calendar;
 import java.util.Locale;
 import com.datepicker.R.string;
 import android.app.Activity;
 import android.app.DatePickerDialog;
 import android.app.Dialog;
 import android.os.Bundle;
  import android.text.format.DateFormat;
  import android.view.View;
   import android.view.View.OnClickListener;
   import android.widget.Button;
  import android.widget.DatePicker;
    import android.widget.TextView;


public class DatepickerActivity extends Activity {
    private TextView tvDisplayDate;
    private DatePicker dpResult;
    private Button btnChangeDate; 
    private int year;
    private int month;
    private int day;
    private String str;
    public static long UTC (int year, int month, int day, int hour, int minute, int second) {
        return 1;
    }

    static final int DATE_DIALOG_ID = 999;

    //private static final  int August =4;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    setCurrentDateOnView();
        addListenerOnButton();
    }

    // display current date
    public void setCurrentDateOnView() {

        tvDisplayDate = (TextView) findViewById(R.id.tvDate);
        dpResult = (DatePicker) findViewById(R.id.dpResult);

        final Calendar c = Calendar.getInstance();
        year = c.get(Calendar.YEAR);
        month = c.get(Calendar. MONTH);
        day = c.get(Calendar.DAY_OF_MONTH);
    //  str=c.getDisplayName(c.MONTH, 2, Locale.US);

               // set current date into textview
        tvDisplayDate.setText(new StringBuilder()
        // Month is 0 based, just add 1
        .append(month + 1).append("-").append(day).append("-")
        .append(year).append(" "));

        // set current date into datepicker
        dpResult.init(year, month, day, null);
    } 
    public void addListenerOnButton() {

        btnChangeDate = (Button) findViewById(R.id.btnChangeDate); 
        btnChangeDate.setOnClickListener(new OnClickListener() { 


            public void onClick(View v) { 
                showDialog(DATE_DIALOG_ID);
            }
        });
    }

    @Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
            case DATE_DIALOG_ID:
                // set date picker as current date
                return new DatePickerDialog(this, datePickerListener,year, month,day);
        }
        return null;
    } 
    private DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {

        // when dialog box is closed, below method will be called.
        public void onDateSet(DatePicker view, int selectedYear,int selectedMonth, int selectedDay) {
            year = selectedYear;
            month = selectedMonth;
            day = selectedDay;

            // set selected date into textview
            tvDisplayDate.setText(new StringBuilder().append(str + 1)
                    .append("-").append(day).append("-").append(year)
                    .append(" "));

            // set selected date into datepicker also
            dpResult.init(year, month, day, null);
        }
    };

}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 日期选择器月份作为数字 的相关文章

随机推荐

  • html5数据属性需要值吗? [复制]

    这个问题在这里已经有答案了 我想知道 html 数据属性是否真的需要应用一个值 我想知道这一点 因为通常我们想知道的是该属性是否实际上被设置为充当标志 当然我们可以为此使用一个类 但实际上 除非您打算以不同的方式设置这些项目的样式 否则标志
  • 为什么这个 CLLocationCooperative2D 变量不可分配?

    我有一个地理编码器方法 我希望它返回为我生成的 CLLocationCooperative2D CLLocationCoordinate2D geocode CLGeocoder geocoder CLGeocoder alloc init
  • 协作虚拟实例的 IP 范围?

    我想介绍一下我们公司的Google Colaboratory 然而 对于我们的大多数实验 我们需要访问使用白名单的 mongoDB 服务器 因此 我想知道 Colaboratory 使用的虚拟实例是否有我们可以使用的特定 IP 范围 否则
  • iPhone 到 Mac 开发

    我是一名 iPhone 开发人员 非常了解该框架 随着 Mac 应用商店即将推出 我想了解有关 Mac 开发的更多信息 有没有好的指南 教程 等等 帮助过渡 我环顾四周并没有发现太多 谢谢您的帮助 您基本上需要了解之间的区别UIKit an
  • Python shebang 线[重复]

    这个问题在这里已经有答案了 我见过有些人在 env 后面加上一个空格来写 shebang 行 例如 usr bin env python 这是拼写错误吗 我从来不使用空格 我用 usr bin env python 有人可以澄清一下吗 不
  • 对角画笔样式给我黑色区域

    我想用以下代码在画布上绘制一个对角线十字 InFlateRect r 1 1 Canvas Brush Color clYellow Canvas Brush Style bsFDiagonal Canvas Pen Color clRed
  • TypeScript TS7015:元素隐式具有“any”类型,因为索引表达式不是“number”类型

    我在 Angular 2 应用程序中收到此编译错误 TS7015 元素隐式具有 any 类型 因为索引表达式不是 number 类型 导致它的代码片段是 getApplicationCount state string return thi
  • 本地主机上的连接被拒绝

    我正在学校尝试使用我的 NodeJS 和 ReactJS 应用程序 但每次运行服务器时 都会出现错误localhost PORT net ERR CONNECTION REFUSED wifi 是否拒绝本地主机上的连接 PS 反应端渲染正确
  • “弱链接”框架是什么意思?

    在 Xcode 中 我可以将框架设置为 可选 而不是 必需 这意味着该框架是弱链接的 这是否意味着框架仅在导入到某个地方时才包含在捆绑包中 我想弱链接一些使用的调试框架私有API 并且我不希望它们出现在 App Store 版本中 重要的提
  • 为什么 C# 中的局部变量不能是 volatile?

    public void MyTest bool eventFinished false myEventRaiser OnEvent delegate doStuff eventFinished true myEventRaiser Rais
  • Python Tkinter 动画

    为什么动画不起作用 当我运行程序时 形状不会移动 from Tkinter import import time class alien object def init self self root Tk self canvas Canva
  • EmberJS:如何使用 ember-qunit 的 moduleFor 测试控制器操作,它使用 ember-data 存储

    我想测试这样的控制器操作 createNewBase function var attributesForNewBase this get model getProperties self this newBase this store c
  • 将 subprocess.run 与包含引号的参数一起使用

    我尝试运行的命令如下所示 xvfb run auto servernum server args screen 0 640x480x24 error file dev stdout opt myExecutable 这是我在 Python3
  • 我应该如何编写符合 ISO C++ 标准的自定义 new 和 delete 运算符?

    我应该如何编写符合ISO C 标准的自定义new and delete运营商 这是继续重载 new 和删除 https stackoverflow com questions 4421706 operator overloading 442
  • 在 Scala 中实现“.clone”

    我正在想办法 clone我自己的对象 在 Scala 中 这是为了模拟 因此可变状态是必须的 由此产生了克隆的全部需要 在提前模拟时间之前 我将克隆整个状态结构 这是我目前的尝试 abstract trait Cloneable A See
  • 如果没有 NULL 我们会做什么?

    我曾经读到过 拥有可空类型绝对是一种邪恶 我相信这是创造它们的人写的一篇文章 在艾达 我相信这是这篇文章 http qconlondon com london 2009 presentation Null References The Bi
  • 导出时的 Highcharts css 样式

    I have the following graph in digital See image but when using the Highchart s hamburguer CSS menu to export to PDF or J
  • java 允许使用函数式接口作为方法吗?

    有了新的 java lambda 和函数式接口的概念 是否可以将这些函数式接口视为方法 interface Func void execute int i void call Func f f 1 instead of f execute
  • 如何使用 Java 检测文件是否存在于 Google Drive 中(并且未被删除)?

    非常不言自明的标题 我正在使用适用于 Java 的 Google Drive Client Api 我目前拥有的内容如下 File f mService files get fileId execute 但是 我找不到该房产File用于检查
  • Android 日期选择器月份作为数字

    在 Android DatePicker 中 在某些操作系统中 月份显示为 Jan Feb Mar Dec 在其他操作系统中 月份显示为 1 2 3 12 有没有办法让它始终保持一致 以便它始终显示 1 2 3 12 作为月份 显示 1 2