目录
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的用法:点我查看