如何从不扩展Activity,Android的类创建TimePicker?

时间:2012-10-09 09:47:50

标签: java android android-widget

我正在尝试从不扩展Activity类的类创建TimePicker对话框。我需要一个名为EnterTime的类中的TimePicker,它具有包含Activity Context的Context属性。

WEB上的所有TimePicker示例都是用Activity类编写的基本示例,这就是为什么它们让我感到困惑。

我希望时间选择器在Android上的效果低于3.0。我不使用XML布局。

所以基本上我需要建议放在onCreateDialog()的位置,如何检索选择的时间等等。

我的EditText有onClickListener()来调用TimePicker。

1 个答案:

答案 0 :(得分:3)

可能是这个帮助你

public class MyTimePicker {
TimePickerDialog mTimePickerDialog;

public interface onTimeSet {
    public void onTime(TimePicker view, int hourOfDay, int minute);
}

onTimeSet mOnTimeSet;

public void setTimeListener(onTimeSet onTimeset) {
    mOnTimeSet = onTimeset;
}

public MyTimePicker(Context ctx) {
    mTimePickerDialog = new TimePickerDialog(ctx, new OnTimeSetListener() {

        @Override
        public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
            mOnTimeSet.onTime(view, hourOfDay, minute);

        }
    }, 1, 1, true);
}

public void show() {
    mTimePickerDialog.show();
}

并调用此

public void ShowTimePicker() {
    MyTimePicker myTimePicker = new MyTimePicker(this);
    myTimePicker.show();
    myTimePicker.setTimeListener(new onTimeSet() {

        @Override
        public void onTime(TimePicker view, int hourOfDay, int minute) {
            Toast.makeText(MainActivity.this,
                    "time is " + hourOfDay + ":" + minute,
                    Toast.LENGTH_LONG).show();

        }
    });
}