首页 > 解决方案 > 更新编辑文本中的日期 - Android Studio

问题描述

我想将 DatePicker 的日期放在 EditText 中,并在此人更改日期时不断更新此编辑文本。谁来帮帮我?

这是我的代码:

private View view;

    private Button next;
    private EditText birthday;
    private DatePicker datePicker;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.fragment_birthday, container, false);

        initWidgets();

        int day = datePicker.getDayOfMonth();
        int month = datePicker.getMonth();
        int year = datePicker.getYear();

        birthday.setText(day + "/" + month + "/" + year);

        return view;
    }

    private void initWidgets() {
        next = view.findViewById(R.id.bt5);
        birthday = view.findViewById(R.id.kz5);
        datePicker = view.findViewById(R.id.date_picker);
    }

xml代码:

<DatePicker
            android:id="@+id/date_picker"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:datePickerMode="spinner"
            android:layout_marginBottom="40dp"
            android:layout_alignParentBottom="true"
            android:calendarViewShown="false"/>

标签: javascriptandroidandroid-studio

解决方案


您可以添加一个侦听器来侦听 DatePicker 上的更改,如下所示:

    datePicker.init(2021, 1, 1, new DatePicker.OnDateChangedListener() {
        @Override
        public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            // use year month day here
        }
    });

推荐阅读