概述
在应用程序中实现TimePicker的一些问题,允许用户在插入数据库记录之前更改数据库记录的时间。
问题在于,按下 上午/下午 按钮时,不会调用 onTimeChanged ( 视图,int,int ) 方法。 无论什么时候更改TimePicker的小时或者分钟值,都会调用 onTimeChanged(),但是。
场景:用户只需单击 上午/下午 按钮: 上午/下午 为 update更新
用户单击小时/分钟:时间已经更新
用户单击 上午/下午 按钮,然后更改小时/分钟: 更新时间和 上午/下午
我认为 上午/下午 按钮应该可以单击以更新时间,而不必更改 上午/下午 按钮后的时间值。
我将一个小测试项目放在一起来复制这个代码,下面是代码:
Activitypublic class TestActivity extends Activity implements OnTimeChangedListener {
private Calendar mCalendar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.timepicker);
mCalendar = Calendar.getInstance();
TimePicker tp = (TimePicker)findViewById(R.id.timepicker);
tp.setIs24HourView(false);
tp.setOnTimeChangedListener(this);
}
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
Log.d("TAG","In onTimeChanged");
mCalendar.set(mCalendar.get(Calendar.YEAR),
mCalendar.get(Calendar.MONTH),
mCalendar.get(Calendar.DAY_OF_MONTH),
hourOfDay,
minute);
setCalendarTime();
}
private void setCalendarTime() {
Date date = mCalendar.getTime();
if (date!= null) {
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yy '@' h:mm a");
String dateTime = formatter.format(date);
Toast.makeText(this, dateTime, Toast.LENGTH_LONG).show();
}
}
}
timepicker.xml
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true">
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"/>
最后
以上就是优秀钢笔为你收集整理的android 判断时间是上午还是下午,Android TimePicker 上午/下午 按钮没有调用 onTimeChanged_android_开发99编程知识库...的全部内容,希望文章能够帮你解决android 判断时间是上午还是下午,Android TimePicker 上午/下午 按钮没有调用 onTimeChanged_android_开发99编程知识库...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复