首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EditText TimePicker展示KeyBoard

EditText TimePicker展示KeyBoard
EN

Stack Overflow用户
提问于 2020-10-15 01:13:07
回答 1查看 138关注 0票数 1

我有一个EditText,它应该会打开一个TimePicker,但它不是打开键盘,而是打开键盘,一旦我用箭头移出键盘,返回,下一次按下就会显示TimePicker。

如何让TimePicker在没有键盘的情况下直接显示?

我把xml放在这里:

代码语言:javascript
复制
<com.google.android.material.textfield.TextInputLayout
            style="@style/TextInputLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/fInicio">

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/fIni"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:maxLines="1"
                android:textColor="@color/colorAccent" />
        </com.google.android.material.textfield.TextInputLayout>

和Java代码:

代码语言:javascript
复制
 fIni.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                int anno = calendario.get(Calendar.YEAR);
                int mes = calendario.get(Calendar.MONTH);
                int dia = calendario.get(Calendar.DAY_OF_MONTH);

                final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker datePicker, int year, int monthOfYear, int dayOfMonth) {
                        calendario.set(Calendar.YEAR, year);
                        calendario.set(Calendar.MONTH, monthOfYear);
                        calendario.set(Calendar.DAY_OF_MONTH, dayOfMonth);
                        fechaInicio = String.format("%02d/%02d/%04d", dayOfMonth,monthOfYear,year);
                        fIni.setText(fechaInicio);

                        if (!fechaFin.equals(""))
                        {
                            if (testChar(fFin.toString()))
                            {
                                Date fI = ParseFecha(fechaInicio);
                                Date fF = ParseFecha(fechaFin);

                                d=restarFechas(fI,fF);

                                dias.setText(String.valueOf(d));
                            }
                        }


                    }
                };
                new DatePickerDialog(NueAvaCuando.this, date, anno,mes,dia).show();
            }
        });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-15 01:24:11

将此代码添加到EditText

代码语言:javascript
复制
android:cursorVisible="false"
android:focusable="false"
android:inputType="none"

就像这样:

代码语言:javascript
复制
            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/fIni"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:cursorVisible="false"
                android:focusable="false"
                android:inputType="none"
                android:maxLines="1"
                android:textColor="@color/colorAccent" />
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64358353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档