gpt4 book ai didi

android - 停止 EditText 在 Activity 启动时调出键盘?

转载 作者:行者123 更新时间:2023-11-29 14:26:19 24 4
gpt4 key购买 nike

我的一个 App 布局中有一个 Edit Text,我希望这个 EditText 只在实际被触摸时打开键盘(我相信这叫做专注?)。

截至目前,只要应用程序打开,键盘就会打开 EditText,这不是我想要的。

我尝试了许多不同的 XML 标签来解决这个问题:

android:focusable="false" <--- Prevents keyboard from opening at all.

android:focusable="true"
android:focusableInTouchMode = "true" <--- These tags give me the same result as no tags (keybaord will open on activity start)

android:focusedByDefault = "true" <--- Only available in API >= 23

我想问的是,为什么禁用 EditText 上的默认焦点如此困难?当然,我缺少一种简单的方法来做到这一点。

编辑:将此行添加到我的 AndroidManifest 解决了这个问题: android:windowSoftInputMode="stateHidden"但是,我不喜欢这种解决方案。似乎因为这是在 list 中,它会影响比我需要更改的单个 EditText 更多的 UI 元素。

最佳答案

或者,您可以将焦点设置到根布局元素:

android:focusable="true"
android:focusableInTouchMode="true"

示例:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:focusable="true"
android:focusableInTouchMode="true">

<EditText
android:inputType="text"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

</LinearLayout>

关于android - 停止 EditText 在 Activity 启动时调出键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47162614/

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