標籤:
TimePicker也繼承自FrameLayout類。時間選擇控制項向使用者顯示一天中的時間(可以為24小時,也可以為AM/PM制),並允許使用者進行選擇。如果要捕獲使用者修改時間資料的事件,便需要為TimePicker添加OnTimeChangedListener監聽器
一、方法
public int getBaseline ()
返回視窗空間的文本基準線到其頂邊界的位移量。如果這個組件不支援基準線對齊,這個方法返回-1/。
傳回值
基準線的位移量,如果不支援基準線對齊則返回-1。
public Integer getCurrentHour ()
擷取目前時間的小時部分。
傳回值
當前小時(0-23)
public Integer getCurrentMinute ()
擷取目前時間的分鐘部分。
傳回值
當前分鐘。
public boolean is24HourView ()
擷取當前系統設定是否是24小時制。
傳回值
如果是24小時制返回true,否則返回false。
public void setCurrentHour (Integer currentHour)
設定當前小時。
public void setCurrentMinute (Integer currentMinute)
設定當前分鐘(0-59)。
public void setEnabled (boolean enabled)
設定可用的檢視狀態。可用的檢視狀態的解釋在子類中改變。
參數
enabled 如果可用為true,否則為false。
public void setIs24HourView (Boolean is24HourView)
設定是24小時還是上午/下午制。
參數
is24HourView True表示 24小時制. False表示上午/下午制.
public void setOnTimeChangedListener (TimePicker.OnTimeChangedListener onTimeChangedListener)
設定時間調整事件的回呼函數。
參數
onTimeChangedListener 回呼函數,不可為空。
二、樣本(全域模式)
1、布局檔案
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:orientation="vertical" > 6 7 <TimePicker 8 android:id="@+id/id_timePicker1" 9 android:layout_width="wrap_content"10 android:layout_height="wrap_content" />11 12 </LinearLayout>
二、activity
1 package base_ui; 2 3 import java.util.Calendar; 4 5 import com.example.allcode.R; 6 7 import android.app.Activity; 8 import android.app.TimePickerDialog; 9 import android.app.TimePickerDialog.OnTimeSetListener;10 import android.os.Bundle;11 import android.text.format.Time;12 import android.widget.TimePicker;13 import android.widget.TimePicker.OnTimeChangedListener;14 15 public class Ui_TimePicker extends Activity{16 private TimePicker timepicker;17 private Calendar cal;//顯示當前日期18 private int year;19 private int month;20 private int day;21 private int hour;22 private int minute;23 24 @Override25 protected void onCreate(Bundle savedInstanceState) {26 27 // TODO Auto-generated method stub28 super.onCreate(savedInstanceState);29 setContentView(R.layout.ui_timepickerdialog);30 timepicker = (TimePicker) findViewById(R.id.id_timePicker1);31 32 //擷取日曆的對象33 cal=Calendar.getInstance();34 //擷取年月日時分秒資訊35 year = cal.get(Calendar.YEAR);36 month = cal.get(Calendar.MONTH)+1;//注意點 ,要加一37 day = cal.get(Calendar.DAY_OF_MONTH);38 hour = cal.get(Calendar.HOUR_OF_DAY);39 minute = cal.get(Calendar.MINUTE);40 41 setTitle("選擇的時間:"+hour+"時-"+minute+"分");42 timepicker.setOnTimeChangedListener(new OnTimeChangedListener() {43 44 @Override45 public void onTimeChanged(TimePicker view, int hour, int minute) {46 // TODO Auto-generated method stub47 setTitle("選擇的時間:"+hour+"時-"+minute+"分");48 }49 });50 51 52 53 }54 55 }
:
三、樣本(對話方塊模式)
對應上述樣本42--49行代碼
1 new TimePickerDialog(this, new OnTimeSetListener() {2 3 @Override4 public void onTimeSet(TimePicker view, int hour, int minute) {5 // TODO Auto-generated method stub6 setTitle("選擇的時間:"+hour+"時-"+minute+"分");7 }8 }, hour, minute, true).show();//前兩個參數初始化,第三個參數確定是否顯示24小時格式的9 }
:
安卓開發_淺談TimePicker(時間選取器)