我想让用户无法编辑textinputlayout,当用户单击它时,我想执行一个操作。
我在textinputlayout的edittext内添加了android:focusable="false"以使其不可编辑,但是现在当我单击它时,它在textinputlayout的onclicklistener内未得到回调。

   <android.support.design.widget.TextInputLayout
        android:id="@+id/tipVideoFilePath"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/uploadVideo"
        android:layout_toLeftOf="@+id/uploadVideo">

    <EditText
        android:id="@+id/etVideoFilePath"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="@dimen/dp5"
        android:singleLine="true"
        android:focusable="false"
        android:hint="@string/videoPath"
        android:textColor="@color/black"/>
</android.support.design.widget.TextInputLayout>

最佳答案

我对TextInputLayoutTextInputEditText有相同的问题。我想打开一个对话框。
这对我有用

<com.google.android.material.textfield.TextInputLayout
            android:id="@+id/country_chooser_layout"
            style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:layout_marginBottom="8dp"
            >

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/country_chooser"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:clickable="true"
                android:drawableEnd="@drawable/ic_expand_arrow"
                android:focusable="false"
                android:hint="Country"
                android:inputType="textCapWords" />
        </com.google.android.material.textfield.TextInputLayout>

Kotlin :
  val countryChooser = view.findViewById<TextInputEditText>(R.id.country_chooser)
  countryChooser.setOnClickListener { v -> showCountryDialog(v) }

关于android - 使textinputlayout不可编辑并在其上设置click事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46502234/

10-12 04:15