gpt4 book ai didi

android - 避免 EditText 消耗点击事件

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:19 26 4
gpt4 key购买 nike

通常将focusablefocusableInTouch + clickable设置为false就足够了。但在这里它不起作用。

我希望父 LinearLayout 也消耗对 EditText 的点击,但它不起作用...

<LinearLayout
android:id="@+id/llText"
android:layout_width="0dp"
android:layout_weight="1"
android:background="?attr/selectableItemBackground"
android:layout_height="match_parent"
android:orientation="horizontal">

<TextView
android:id="@+id/tvText"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:paddingRight="5dp"
android:text="@null" />

<EditText
android:id="@+id/etText"
android:inputType="none"
android:gravity="center_horizontal"
android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="false"
android:layout_width="wrap_content"
android:ems="4"
android:layout_gravity="center_vertical"
android:layout_height="wrap_content" />

</LinearLayout>

我尝试了 editable=falseinputType=none 但它不起作用。为什么不? EditText 处理点击并且不将其传递给它的父级。

编辑

我正在为 LinearLayout 设置一个 onClickListener,如果我直接按 EditText 它就不起作用了...

最佳答案

晚了,但也许其他人需要此信息。将 focusable、focusableInTouch + clickable 设置为 false 后,将其添加到您的 java 代码中:

editText.setMovementMethod(null);
editText.setKeyListener(null);

不要忘记保存这些值以便以后恢复它们:

mMovementMethod = mEditText.getMovementMethod();
mKeyListener = mEditText.getKeyListener();

关于android - 避免 EditText 消耗点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31815923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com