EditText和软键盘
问题1:一开始oncreate进入某个含有EditText的View,软键盘就显示出来了,交互很不好,还没需要它就出来了。
1)在Manifest.xml文件中相应的activity下添加一下代码:
android:windowSoftInputMode="stateHidden"
2)让EditText失去焦点,使用EditText的clearFocus方法
例如:EditText edit=(EditText)findViewById(R.id.edit);
edit.clearFocus();
3)强制隐藏Android输入法窗口
例如:EditText edit=(EditText)findViewById(R.id.edit);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edit.getWindowToken(),0);
4).EditText始终不弹出软件键盘
例:EditText edit=(EditText)findViewById(R.id.edit);
edit.setInputType(InputType.TYPE_NULL);
5):一个view焦点的设置是从上到下,所以只在要EditText上加一个可聚焦的控件,然后每次oncreate后展现时,焦点就不在EditText上了:
<LinearLayout android:focusable="true" android:focusableInTouchMode="true" android:layout_width="0px" android:layout_height="0px"/>
<EditText > </EditText>
(外篇
android:windowSoftInputMode
活动的主窗口如何与包含屏幕上的软键盘窗口交互。这个属性的设置将会影响两件事情:
1> 软键盘的状态——是否它是隐藏或显示——当活动(Activity)成为用户关注的焦点。
2> 活动的主窗口调整——是否减少活动主窗口大小以便腾出空间放软键盘或是否当活动窗口的部分被软键盘覆盖时它的内容的当前焦点是可见的。
它的设置必须是下面列表中的一个值,或一个”state…”值加一个”adjust…”值的组合。
在任一组设置多个值——多个”state…”values,例如&mdash有未定义的结果。各个值之间用|分开。
例如:
<activity android:windowSoftInputMode="stateVisible|adjustResize" . . . >
在这设置的值(除"stateUnspecified"和"adjustUnspecified"以外)将覆盖在主题中设置的值。
------------------------------无聊的分割线---------------------------------------
下面是对值描述:
"stateUnspecified" 软键盘的状态(是否它是隐藏或可见)没有被指定。
系统将选择一个合适的状态或依赖于主题的设置。这个是为了软件盘行为默认的设置。
"stateUnchanged" 软键盘被保持无论它上次是什么状态,是否可见或隐藏,当主窗口出现在前面时。
"stateHidden" 当用户选择该Activity时,软键盘被隐藏——也就是,当用户确定导航到该Activity时,
而不是返回到它由于离开另一个Activity。
"stateAlwaysHidden" 软键盘总是被隐藏的,当该Activity主窗口获取焦点时。
"stateVisible" 软键盘是可见的,当那个是正常合适的时(当用户导航到Activity主窗口时)。
"stateAlwaysVisible" 当用户选择这个Activity时,软键盘是可见的——也就是,
也就是,当用户确定导航到该Activity时,而不是返回到它由于离开另一个Activity。
"adjustUnspecified" 它不被指定是否该Activity主窗口调整大小以便留出软键盘的空间,
或是否窗口上的内容得到屏幕上当前的焦点是可见的。
系统将自动选择这些模式中一种主要依赖于是否窗口的内容有任何布局视图能够滚动他们的内容。
如果有这样的一个视图,这个窗口将调整大小,
这样的假设可以使滚动窗口的内容在一个较小的区域中可见的。这个是主窗口默认的行为设置。
"adjustResize" 该Activity主窗口总是被调整屏幕的大小以便留出软键盘的空间。
"adjustPan" 该Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。
相反,当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分。
这个通常是不期望比调整大小,因为用户可能关闭软键盘以便获得与被覆盖内容的交互操作。
)
问题2:onBackPressed事件后返回了含有EditText的某个View,点击EditText ,软键盘死活不出来。
解决:问题的原因是因为在离开这个界面的时候焦点实在EditText上的,如果保持这个view,当 再次onBackPressed返回这个界面的时候,焦点还在EditText上,导致软键盘出不来了,为什么还没探索。只要在onBackPressed函数里面,将要返回的view clearFocus();就行了。焦点重新设置。
- 浏览: 1211766 次
- 性别:
- 来自: 广州
-
文章分类
- 全部博客 (547)
- android 第三方jar包 依赖 引用 (1)
- Android (28)
- Android EditText 让编辑框只能输入中文汉字 (1)
- Android 知识点 面试 (2)
- java map (1)
- java JSP Servlet (4)
- java map 遍历 (1)
- java JSP Servlet JSTL (2)
- IOS 进程 (1)
- Linux 内核 编译 (1)
- C++ IO (1)
- JAVA NIO (1)
- javascript (1)
- java (1)
- UML 聚合与组合 (1)
- JVM (1)
- JAVA环境变量 JAVA_HOME (1)
- POI 导出Excel (1)
- java 递归 迭代 (1)
- JAVA 递归 (1)
- Android 反编译 (1)
- Linux (1)
- Android 验证码 验证 (1)
- Android 四大组件 作用 (1)
- Android JIN (1)
- eclipse (1)
- Hibernate (17)
- Hibernate orm ssh (1)
- Spring Hibernate C3P0 (1)
- Hibernate 面试题 (1)
- Hibernate 缓存 (1)
- Hibernate Spring (1)
- HQL (1)
- hiberna (1)
- Web前端 (2)
- SSH (1)
- NoSQL (1)
- phonegap (2)
最新评论
-
it_node:
谢谢拦截器知识分享,推荐一个flask的入门教程给大家:深入浅 ...
Spring MVC 方法注解拦截器(转) -
18335864773:
尝试用一下pageoffice插件去生成excel把。代码调用 ...
用POI生成Excel文件的典型例子【基于poi3.0 附源码】 -
小梦翔:
管用,不过第一个只有Android4.4的,第二个有4.4一下 ...
Android Kikat下由图片Uri获取Path的解决方案 -
spring_springmvc:
java程序语言学习教程 地址http://www.zuida ...
JAVA程序员您需要学习的25个标准 -
lliiqiang:
与客户端交互是前台事情,即便出错,对于后台数据仍然可以被视为交 ...
MVC设计模式的总结
发表评论
-
Android怎么快速建立TCP连接
2014-08-14 09:01 1088Android如何快速建立TCP连接我遇到一个问题,如下: ... -
Android中onContextItemSelected不响应
2014-08-12 09:06 2560Android中onContextItemSelected ... -
Android ListView中FooterView布局问题
2014-08-11 09:27 847在做ListView上拉加载中遇到的问题,不清楚什么原理,具 ... -
Failed to fectch
2014-08-10 10:34 805Failed to fectch URl https:// ... -
android QVGA WQVGA HVGA VGA WVGA各个分辨率的区别
2014-08-10 10:33 2040QVGA/WQVGA/HVGA/VGA/WVGA各 ... -
Netbeans 装Android
2014-08-10 10:33 1015步骤如下: 1)工具--插件--设置,添加 name 随 ... -
Android SDK Content loader has encountered a problem
2014-08-09 19:56 2831我的解决办法:重新建一个working,不要之前那个工作目录 ... -
Android处理图片OOM的若干方法小结
2014-08-09 19:55 621前言 众所周知,每个Android应用程序在运行时都有一 ... -
Android L为什么不用Android 5.0的版本号
2014-08-09 19:55 1120谷歌没有对外界解释过 Android L 的“L”的含义, ... -
android 9.png 浅析
2014-07-24 10:46 659可能做过任务栏美化的同学都会知道,我靠,framework ... -
android之.9.png文件
2014-08-02 23:40 1062什么叫.9.PNG呢,这是安卓开发里面的一种特殊的图片,这 ... -
Android 控件布局常用属性
2014-08-01 08:42 922<!--单个控件经常用 ... -
Android Kikat下由图片Uri获取Path的解决方案
2014-07-27 10:05 1494起因:Kikat下获取图片Uri后得到的地址格式为cont ... -
Android反射机制 实现与原理
2014-07-27 10:05 947一、反射的概念及在Java中的类反射 反射主要 ... -
安卓layout_margin失效的原因
2014-07-24 10:47 1927在FrameLayout中,如果子View需要设置layo ... -
Android中asset文件夹和raw文件夹区别
2014-07-27 10:05 863res/raw和assets的相同点: 1.两者目 ... -
android 本地存取复杂数据
2014-08-01 08:42 1130@SuppressWarnings("unche ... -
android之进程等级
2014-07-31 09:21 1069Android系统会尽可能 ... -
android学习总结了几点问题
2014-07-31 09:20 5421.Handler Handler是什么,作用及为 ... -
更新Anadroid SDK Tooks之后,Eclipse提示No update were found
2014-07-31 09:20 9804使用Android SDK Manager 更 ...
相关推荐
在Android开发中,有时会遇到一个常见的问题:当用户在悬浮窗内的EditText输入时,软键盘弹出可能会遮挡住部分视图,导致用户体验下降。本文将深入探讨如何解决这一问题,并实现软键盘与悬浮窗的联动,即软键盘弹出...
有时候,为了提供更好的用户体验,我们可能需要自定义`EditText`的功能,比如实现类似软键盘上的删除按钮,让用户在长按时可以连续删除文本。这个功能在描述中被称为“长按删除按钮,不断删除EditText中内容”。下面...
### 软键盘挡住EditText完美解决方案 在移动应用开发中,经常会遇到这样一个问题:当用户在界面上点击一个输入框(EditText)时,软键盘弹出后会遮挡该输入框,导致用户无法清晰地看到自己正在输入的内容,极大地...
最近项目上遇到 dialog 里recyclerview 嵌套 ...基本上用到了动态改高度,属性动画,edit的 touchListener ,软键盘高度监听 及 开关监听,recycerview 的 item移动处理 等。在此记录下,希望也对你们有所帮助。
5. **使用 CoordinatorLayout 和 Behavior**:如果你的布局使用了`CoordinatorLayout`,可以创建一个自定义的`Behavior`,让`EditText`与软键盘的行为进行联动。这种方式在 Material Design 设计中较为常见。 无论...
Android View 完美实现EditText 在软键盘上边的示例 本篇文章主要介绍了 Android View 完美实现 EditText 在软键盘上边的示例,具有一定的参考价值。这篇文章将详细介绍如何使用 PopupWindow 实现 EditText 在软...
android edittext不弹出软键盘三种方法“: 方法一: 在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden 例如: android:label="@string/app_name" ...
"Android软键盘手动显示、隐藏、布局上移和EditText上移Demo"这个项目主要关注以下几个关键知识点: 1. **软键盘的控制**: - 显示软键盘:可以通过调用`InputMethodManager`的`showSoftInput()`方法来显示软键盘...
总的来说,处理Android EditText被软键盘遮盖的问题需要对Android系统的键盘行为有深入理解,并结合具体的界面布局和系统特性进行适配。通过监听布局变化和动态调整界面元素的位置,我们可以有效地解决这个问题,...
在Android开发中,软键盘与EditText的交互是一个常见的需求,特别是在设计输入界面时。这个压缩包文件"Android 实现软键盘与EditText的交互.zip"包含了关于如何处理Android应用中软键盘与EditText之间的交互问题的...
总的来说,防止EditText自动弹出软键盘涉及到对Android系统的输入管理机制的理解和巧妙运用。开发者需要在保证功能正常运行的同时,兼顾用户交互的便捷性和舒适性。在实际项目中,可能还需要结合其他UI设计和业务...
在Android中,软键盘的显示与隐藏通常涉及到两个关键组件:EditText和Activity。EditText是用户输入文字的控件,当其获得焦点时,系统默认会弹出软键盘。而Activity则是应用的容器,它可以监听到整个屏幕的触摸事件...
而软键盘的管理和显示则是移动应用用户体验的关键因素之一。本文将深入探讨如何在Android中正确处理Dialog与软键盘的交互。 首先,让我们了解Android Dialog的基本用法。Dialog是基于Activity的,通常用于显示一些...
在Android开发中,软键盘遮挡问题是一个常见的用户体验问题,特别是在登录界面这样的场景下,当用户需要输入用户名和密码时,打开的虚拟键盘可能会将底部的“登录”按钮完全或部分遮挡,导致用户无法直接看到并点击...
在Android开发中,全屏模式下遇到的一个常见问题是当用户点击EditText输入时,弹出的软键盘会遮挡住部分或全部界面,导致用户无法看到正在编辑的内容。为了解决这个问题,我们可以采用一些策略来调整布局,确保软...
然而,当用户在EditText中输入时,如果设备的软键盘弹出,有时会遮挡部分屏幕内容,导致用户无法看到或访问被遮挡的区域。这在手机或平板等小屏幕设备上尤为常见,影响了用户体验。为了解决这个问题,开发者需要掌握...
在Android开发中,EditText是用于用户输入文本的基本控件,通常会伴随着系统默认的软键盘弹出,以便用户输入文字。然而,在某些特定场景下,我们可能需要自定义键盘,而不是使用系统的软键盘,比如游戏界面、数字...
在Android开发中,EditText是用户输入文本的基本组件,它经常...在实际开发中,你可以根据项目需求和团队规范选择合适的方式。记住,良好的用户体验往往体现在这些小细节上,一键删除功能可以显著提高用户的操作效率。
当用户点击EditText输入时,系统会自动弹出软键盘。这会影响到Activity的根布局(通常是一个LinearLayout或RelativeLayout),因为键盘的出现占据了屏幕的一部分,导致布局向上移动。然而,背景不动意味着我们希望...
在Android应用开发中,经常会遇到一个常见的问题:当用户在EditText控件中输入时,弹出的系统软键盘会遮挡部分屏幕内容,尤其是对于底部的EditText,这可能导致用户无法看到或触及到输入框。本教程将详细介绍如何...