我希望能够从EditText删除焦点。例如,如果键盘出现,用户用后退按钮隐藏它,我希望焦点和光标消失。怎样才能做到呢?
当前回答
你也可以包括android:windowSoftInputMode="stateAlwaysHidden"在你的manifest动作部分。
这相当于:
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
其他回答
将这两个属性添加到你的父布局(例如:线性布局,相对布局)
android:focusable="true"
android:focusableInTouchMode="true"
它会成功的:)
你必须删除<requestFocus/>
如果你不使用它,还是同样的问题
user LinearLayout作为父类并设置
android:focusable="true"
android:focusableInTouchMode="true"
希望对你有所帮助。
试着在你的视图上使用这个 这招对我很管用:
<View
android:id="@+id/fucused"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"/>
删除自动聚焦编辑文本android
这对我很有用
在链接中,他们建议使用线性布局,但简单的视图也可以
<View
android:id="@+id/focus_thief"
android:layout_width="1dp"
android:layout_height="1dp"
android:focusable="true"
android:focusableInTouchMode="true" />
然后,如果这个“小偷”被放置在布局的顶部(第一个可聚焦的项目),调用clearFocus()将工作。
你可以把这个添加到onCreate,它将隐藏键盘每次活动启动。
您还可以通过编程方式将焦点更改为另一个项目。
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
推荐文章
- 在应用程序本身中更改Locale
- apk (.apk)和应用程序包(.aab)的区别
- 如何设置超时在改造库?
- Android - SPAN_EXCLUSIVE_EXCLUSIVE跨度不能为零长度
- TextView的字体大小在Android应用程序改变字体大小从本机设置
- 如何模拟Android杀死我的进程
- 禁用EditText闪烁光标
- Android Eclipse -无法找到*.apk
- 设置TextView文本从html格式的字符串资源在XML
- 如何允许所有网络连接类型HTTP和HTTPS在Android(9)馅饼?
- Android加载JS包失败
- Android Studio, logcat在应用程序关闭后清理
- 在android中从上下文获取活动
- 无法解析主机"<URL here>"没有与主机名关联的地址
- getActivity()在Fragment函数中返回null