12_Android与时间日期相关的控件


目录

1.TimerPicker的使用方法

2.DatePicker的使用方法

 3.AnalogClock(模拟时钟)的使用方法



1.TimerPicker的使用方法

  • 在布局文件使用<TimePicker/>控件
  • 在MainActivity获取代表TimePicker、Button和TextView控件的对象
  • 为TimePicker和Button绑定监听器

编号

方法

类型

描述

1

public Integer getCurrentHour()

普通

返回当前设置的小时

2

public Integer getCurrentMinute()

普通

返回当前设置的分钟

3

public boolean is24HourView()

普通

判断是否是24小时制

4

public void setCurrentHour(Integer currentHour)

普通

设置当前的小时数

5

public void setCurrentMinute(Integer currentMinute)

普通

设置当前的分钟

6

public void setEnabled(boolean enabled)

普通

设置是否可用

7

public void setIs24HourView(Boolean is24HourView)

普通

设置时间为24小时制

新建应用程序,命名为:S09_TimePicker

  • 修改布局文件 

  • 模拟机上的显示: 

 

  • 在代码当中使用TimerPicker,获取timePicker控件的标签用对象表示:
  • 为了调试方便,在布局文件加了两个TextView控件,用来显示变化的时间和确定的时间,增加一个按钮来获取TimePicker时间:代码如下:
<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" >

    <TimePicker 
        android:id="@+id/timerPickerId"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <Button 
        android:id="@+id/buttonId"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/timerPickerId"
        android:layout_marginTop="20dp"
        android:text="获取TimePicker时间"/>
    <TextView 
        android:id="@+id/textViewId1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/buttonId"
        android:textSize="20dp"
        android:text="确定时间:"/>
    <TextView 
        android:id="@+id/textViewId2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/textViewId1"
        android:layout_marginTop="20dp"
        android:textSize="20dp"
        android:text="变化时间:"/>


</RelativeLayout>
  •  界面如下:

  •  在MainActivity获取代表TimePicker、Button和TextView控件的对象

  • 使用内部类实现 OnTimeChangedListener监听器接口,然后复写他的抽象函数,

  • 使用内部实现类实现OnClickListener监听器对象,然后复写他的抽象函数:

  • 为Button和TimePicker绑定监听器:

  •  运行应用程序,效果如下:


2.DatePicker的使用方法

  • 在布局文件使用<DatePicker/>控件
  • 在MainActivity获取代表DatePicker、Button控件的对象

新建一个应用程序:命名为:S09_DatePicker

  •  在布局文件使用<DatePicker/>控件,然后增加一个Button控件获取时间,一个TextView显示时间
<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">
  

   <DatePicker 
       android:id="@+id/datePickerId"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"/>
   <Button 
       android:id="@+id/buttonId"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_below="@id/datePickerId"
       android:text="获取DatePicker的值"/>
   <TextView 
       android:id="@+id/TextViewId"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_below="@id/buttonId"
       android:layout_marginTop="20dp"
       android:text="当前时间:"/>

</RelativeLayout>
  • 效果如下:

  • 声明变量,获取控件的标签用对象表示:

  • 使用内部类实现OnClickListener监听器类:

  • 绑定监听器:

代码如下:

package com.yuan.s09_datepicker;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;

public class MainActivity extends Activity {
    //声明变量
	private DatePicker datePicker;
	private Button button;
	private TextView textView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取控件的标签用对象表示
        datePicker = (DatePicker)findViewById(R.id.datePickerId);
        textView = (TextView)findViewById(R.id.TextViewId);
        button = (Button)findViewById(R.id.buttonId);
        //设置默认时间
        datePicker.updateDate(2018, 8, 20);
        //为Button绑定监听器
        ButtonListener listener =new ButtonListener();
        button.setOnClickListener(listener);
    }

    //实现OnClickListener接口
    class ButtonListener implements OnClickListener{
		@Override
		//复写onClick方法
		public void onClick(View v) {
			// TODO Auto-generated method stub
			int y = datePicker.getYear();
			int m = datePicker.getMonth()+1;
			int d =datePicker.getDayOfMonth();
			//显示时间,因为Java月份从0开始算起,所以m需要加一
			textView.setText("当前时间  :"+y+"年"+m+"月"+d+"日");	
		}
    	
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}

效果如下:

  


 3.AnalogClock(模拟时钟)的使用方法

  • 新建一个应用程序:命名为:S09_AnalogClock;

  • 在布局文件中添加<AnalogClock/>控件:

同样可以在代码中获取控件的对象。 


 附录: 

本博文Demo下载:https://github.com/zGuangYuan/Android- 

github的用法:点我查看

猜你喜欢

转载自blog.csdn.net/qq_36243942/article/details/81865432