есть ли способ написать этот метод один раз с другой переменной EditText? - PullRequest
0 голосов
/ 10 июля 2020

Есть ли способ записать эти два метода в один метод. Я хочу написать этот метод только один раз. Когда я вызываю этот метод, он принимает другую переменную EditText. edittext_one и edittext_two - это идентификатор переменной edittext.

Я хочу вызвать вне одного и того же единственного метода как для edittext, так и для нескольких. Вызывается тот же метод, но с другой переменной.

Я использую android studio с Java Language.

ИЗМЕНИТЬ ТЕКСТ Один МЕТОД ВНУТРИ onCreate

edittext_one.setInputType(InputType.TYPE_NULL); //keyboard disappear
edittext_one.setOnFocusChangeListener(new View.OnFocusChangeListener() {
    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        if (hasFocus) {
            showDateDailogForms(edittext_one);
        }
    }
});

ИЗМЕНИТЬ ТЕКСТ Два МЕТОДА ВНУТРИ onCreate

edittext_two.setInputType(InputType.TYPE_NULL); //keyboard disappear
edittext_two.setOnFocusChangeListener(new View.OnFocusChangeListener() {
    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        if (hasFocus) {
            showDateDailogForm(edittext_two);
        }
    }
});

ИЗМЕНИТЬ ТЕКСТ ОДИН МЕТОД ВНЕ onCreate

private void showDateDailogForm(final EditText edittext_one) {
            //final
            Calendar calendar = Calendar.getInstance();
            DatePickerDialog.OnDateSetListener dateSetListener = new DatePickerDialog.OnDateSetListener() {
                @Override
                public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                    calendar.set(Calendar.YEAR, year);
                    calendar.set(Calendar.MONTH, month);
                    calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
                    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy");
                    edittext_one.setText(simpleDateFormat.format(calendar.getTime()));
                }
            };
            new DatePickerDialog(MainActivity.this, dateSetListener, calendar.get(Calendar.YEAR),
                    calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)).show();
        }

ИЗМЕНИТЬ ТЕКСТ ДВА МЕТОДА ВНЕ onCreate

  private void showDateDailogForms(final EditText edittext_two) {
        Calendar calendar = Calendar.getInstance();
        DatePickerDialog.OnDateSetListener dateSetListener = new DatePickerDialog.OnDateSetListener() {
            @Override
            public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                calendar.set(Calendar.YEAR, year);
                calendar.set(Calendar.MONTH, month);
                calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy");
                edittext_two.setText(simpleDateFormat.format(calendar.getTime()));
            }
        };
        new DatePickerDialog(MainActivity.this, dateSetListener, calendar.get(Calendar.YEAR),
                calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)).show();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...