TimePicker这个控件目前我也没怎么用过,因为个人太缺乏项目经验,但是既然是Android自带的,我还是要在这里简单实现一下,无论如何,这些都是Android起步的基础,了解一下因该会有好处的
其实很简单,TimePicker跟我们使用的Button TextView一样,属于基本控件:主要原理就是实现OnTimeChangedListener方法,实现修改时间动作的监听。
首先,配置文件:
<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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.wj.timepicker.MainActivity" > <!-- --> <TimePicker android:id="@+id/tp_first" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:color/darker_gray" /> </RelativeLayout>然后主Activity中:
package com.wj.timepicker; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.util.Log; import android.widget.TimePicker; import android.widget.TimePicker.OnTimeChangedListener; import android.widget.Toast; public class MainActivity extends Activity implements OnTimeChangedListener { private Context mContext; private TimePicker tp_first; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mContext=this; tp_first=(TimePicker) findViewById(R.id.tp_first); tp_first.setOnTimeChangedListener(this); } @Override public void onTimeChanged(TimePicker view, int hourOfDay, int minute) { // TODO Auto-generated method stub Toast.makeText(mContext, "Hour:"+hourOfDay+";minute:"+minute, Toast.LENGTH_SHORT).show(); } }
//该函数用于设置是否使用24小时制 tp_first.setIs24HourView(true);Ok,有兴趣的同学可以自己动手实现,看一下效果,还可以根据TimePicker控件得到当前选择的时 分,也可以设置默认第一次进入时的时间,都很简单,大家看看就可以。