Android开发之时间日期操作实例

作者:shichen2014 时间:2021-10-20 16:16:55 

相信对于手机的时间日期设置大家一定都不陌生吧,今天举一个关于时间日期设置的示例,其中有些许不完善之处,例如如何使设置的时间日期和手机系统同步等。感兴趣的读者可以根据自身经验加以完善。

现来看看具体示例,希望对大家有所帮助。

首先是时间设置:

.java文件(MainActivity.java)代码如下:


package com.example.activity_time_date;
import java.util.Calendar;
import android.app.Activity;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.TimePicker;
public class MainActivity extends Activity {
private TextView mytext = null;
private Button mybutton1 = null;
private Button mybutton2 = null;
private int mHour;
private int mMinute;
static final int TIME_DIALOG_ID = 0;
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() {
 @Override
 public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
  // TODO Auto-generated method stub
  mHour = hourOfDay;
  mMinute = minute;
  updateDisplay();
 }
};
@Override
protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 mytext = (TextView)findViewById(R.id.textview);
 mybutton1 = (Button)findViewById(R.id.button1);
 mybutton2 = (Button)findViewById(R.id.button2);
 mybutton1.setOnClickListener(new OnClickListener() {
  @Override
  public void onClick(View v) {
   // TODO Auto-generated method stub
   showDialog(TIME_DIALOG_ID);
  }
 });
 mybutton2.setOnClickListener(new OnClickListener() {
  @Override
  public void onClick(View v) {
   // TODO Auto-generated method stub
   MainActivity.this.startActivity(new Intent(MainActivity.this, dateActivity.class));
  }
 });
 final Calendar cal = Calendar.getInstance();
 mHour = cal.get(Calendar.HOUR_OF_DAY);
 mMinute = cal.get(Calendar.MINUTE);
 updateDisplay();
}
private void updateDisplay(){
 mytext.setText(new StringBuilder().append(pad(mHour)).append(":")
   .append(pad(mMinute)));
}
private static String pad(int i){
 if (i >= 10)
  return String.valueOf(i);
 else
  return "0" + String.valueOf(i);
}
@Override
protected Dialog onCreateDialog(int id) {
 switch (id) {
 case TIME_DIALOG_ID:
  return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute,
    false);
 }
 return null;
}
}

布局文件(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"
tools:context="${relativePackage}.${activityClass}" >
<LinearLayout
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical"
>
<TextView
 android:id="@+id/textview"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 />
<Button
 android:id="@+id/button1"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="设置时间"
 />
<Button
 android:id="@+id/button2"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="下一页"
 />
</LinearLayout>
</RelativeLayout>

运行效果如下图所示:

Android开发之时间日期操作实例Android开发之时间日期操作实例

日期设置和时间设置基本一致,在此不再赘述。读者可以调试并改进本文示例代码,相信会有新的收获!

标签:Android,时间,日期,操作
0
投稿

猜你喜欢

  • Java设计模式之抽象工厂模式(Abstract Factory)

    2021-08-31 02:39:48
  • Java常用集合与原理解析

    2023-04-01 14:26:42
  • Java用递归方法解决汉诺塔问题详解

    2022-11-23 03:11:40
  • Ubuntu 20.04 下安装配置 VScode 的 C/C++ 开发环境(图文教程)

    2021-12-01 16:48:23
  • Android中多个ContentProvider的初始化顺序详解

    2021-11-06 03:52:36
  • c#入门之分支语句使用方法(三元运算符、if语句、switch语句)

    2021-12-06 00:55:20
  • Java获取文件夹下所有文件名称的方法示例

    2023-08-08 08:01:26
  • Android PopupWindow实现遮罩层效果

    2022-02-04 13:28:46
  • java中 String和StringBuffer的区别实例详解

    2023-06-19 18:48:31
  • Servlet实现文件的上传与下载

    2023-08-08 06:13:43
  • idea springboot远程debug的操作方法

    2022-11-01 00:04:31
  • Android OpenCV基础API清晰度亮度识别检测

    2023-01-04 14:10:27
  • C语言实现稀疏矩阵

    2023-04-17 15:00:45
  • Eclipse配置maven环境的图文教程

    2021-11-15 19:06:02
  • 深入第K大数问题以及算法概要的详解

    2022-05-22 16:52:29
  • c# 控件截图的简单实例

    2022-01-21 16:43:19
  • Java实现双保险线程的示例代码

    2023-09-21 07:59:46
  • swagger添加权限验证保证API(接口)安全性(两种方法)

    2023-11-27 18:58:33
  • Dubbo服务校验参数的解决方案

    2023-06-09 14:30:10
  • C#通过NPOI导入导出数据EXCEL

    2023-01-27 14:24:08
  • asp之家 软件编程 m.aspxhome.com