TimePicker对话 [英] TimePicker Dialog

查看:81
本文介绍了TimePicker对话的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用多个textviews用的onclick听众,直接我一个TimePicker对话框。

I'm using multiple textviews with onclick listeners that direct me to a TimePicker Dialog.

不过,我似乎无法知道如何阅读教程后写code,

However I cannot seem to know how to write the code after reading the tutorials,

    textview1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            showDialog(TIME_DIALOG_ID);
        }
    });

    textview2.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            showDialog(TIME_DIALOG_ID);
        }
    });

要显示对话框:

@Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
    case TIME_DIALOG_ID:
        return new TimePickerDialog(this,
                mTimeSetListener, mHour, mMinute, true);
    }
    return null;
}

最后,

private TimePickerDialog.OnTimeSetListener mTimeSetListener =
        new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(android.widget.TimePicker view,
                    int hourOfDay, int minute) {
                mHour = hourOfDay;
                mMinute = minute;
            }
        };

现在,要为.setText调用该TimePickerDialog.OnTimeSetListener回调后timepicker TextView的,我应该怎么写code?

now, to .setText for the textview that CALLED the timepicker after the TimePickerDialog.OnTimeSetListener callback, how should I write the code?

答案其实很简单,但我缺乏OOP知识,还在学习。
谢谢...

The answer is very simple but I lack OOP knowledge and still learning. Thanks...

推荐答案

您需要使用一个全球性的varible。比方说,字符串fromWhere =;

You need to use a global varible. say,String fromWhere="";

现在,

    textview1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                fromWhere="textview1";
                showDialog(TIME_DIALOG_ID);
            }
    });

    textview2.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                fromWhere="textview2";
                showDialog(TIME_DIALOG_ID);
            }
    });
    ...
    private TimePickerDialog.OnTimeSetListener mTimeSetListener =
            new TimePickerDialog.OnTimeSetListener() {
                @Override
                public void onTimeSet(android.widget.TimePicker view,
                        int hourOfDay, int minute) {

                    if(fromWhere.equals(textview1))
                           // set hour and minute to according variable and textview
                    else if(fromWhere.equals(textview2))
                           // set hour and minute to according variable and textview
                    .. //so on for others
                    //mHour = hourOfDay;
                    //mMinute = minute;
                    fromWhere="";
                }
    };

这篇关于TimePicker对话的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆