其他分享
首页 > 其他分享> > android-DatePickerDialog由微调器onClick调用

android-DatePickerDialog由微调器onClick调用

作者:互联网

我在SOF或Google上找不到任何东西!所以我需要你的帮助!
id喜欢单击我的(空)微调框,所以我得到一个显示日期或时间选择对话框.我找不到任何处理方法.这些是我目前的摘要:

只是我的两个对象:

DatePickerDialog dDialog = new DatePickerDialog(this, (OnDateSetListener) this, 2012, 3, 3);


        Spinner dSpinner = (Spinner) findViewById(R.id.spinner1);

xml:

 <Spinner
    android:id="@+id/spinner1"
    android:spinnerMode="dialog"
    android:prompt="@string/hint_date"
    android:layout_marginTop="40dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

也许您有一个解决方法.我想通过onClick来选择一个日期,称为选择器(对于微调器,这是不可能的吗?!),我也尝试过onclicklisteners.

解决方法:

spinnerMode属性不是您想要的.为了在用户单击Spinner时显示DatePickerDialog,您必须创建一个自定义的Spinner小部件并覆盖performClick方法,该方法负责显示带有Spinner值的默认对话框.下面是一个示例:

public class CustomSpinnerDialog extends Spinner {

        // implement all the constructors   

    @Override
    public boolean performClick() {
        DatePickerDialog dDialog = new DatePickerDialog(getContext(),
                new OnDateSetListener() {

                    @Override
                    public void onDateSet(DatePicker view, int year,
                            int monthOfYear, int dayOfMonth) {
                        Toast.makeText(getContext(), "Something",
                                Toast.LENGTH_SHORT).show();

                    }
                }, 2012, 3, 3);
        dDialog.show();
        return false;
    }

}

然后,您要做的就是在布局中使用此自定义微调框.

标签:datepicker,android-spinner,spinner,dialog,android
来源: https://codeday.me/bug/20191031/1978688.html