问题标签 [android-virtual-keyboard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
641 浏览

javascript - 虚拟键盘在锚点单击时短暂消失

我创建了一个文本字段组件,其中包含一个常规文本字段和旁边的清除 (x) 按钮。

这是标记:

这是我用来初始化它的代码:

事件clearField()处理程序清空字段,移除清除按钮,然后再次聚焦文本字段。

问题

单击清除按钮时,虚拟键盘会在模糊和焦点之间短暂消失。是否可以始终保持键盘可见?

顺便说一句,我知道当整个文本被选中然后删除时清除按钮不会消失,但我不太担心这种情况:)

0 投票
0 回答
745 浏览

android - 防止 Android 上的全屏虚拟键盘(Adobe Air 应用程序)

我想在我的 Adob​​e Air 制作的应用程序中防止虚拟键盘在 Android(横向模式)上全屏显示。

我已经阅读了一种在布局 xml 中使用 android:imeOptions="flagNoExtractUi" 的方法,但我还没有设法在 Adob​​e Air 中找到如何做到这一点。描述符 xml 中有一个 android manifest 标记,但我无法使其工作。

以下是它在原生 Android 开发中的完成方式: 禁用横向软键盘输入的全屏编辑视图?

任何人都知道如何在空气中做到这一点?

提前致谢!

/卡尔

0 投票
0 回答
287 浏览

android - Android物理键盘依旧让虚拟键盘秀

我正在做一个项目,我使用“Android Mini PC”(中文)并将其连接到电视。用户使用他们的遥控器在环境中导航。

该应用程序是全屏的,但每当启动一个对话框时,虚拟键盘就会弹出导航栏,需要始终隐藏。(即使我正在使用物理键盘进行测试)我在旧型号的 Android Mini PC 上没有这个问题。

我可以通过禁用该服务来强制关闭虚拟键盘,但我只需要在存在物理键盘时保持隐藏,而不是一直隐藏。(在旧型号上工作正常,它自己炸了,因此我使用的是新型号)

第二个问题是导航栏。即使该服务被禁用,导航栏仍会在键盘启动时显示。对于我正在处理的项目,导航栏保持在屏幕上是至关重要的。我担心 Mini PC 认为它是平板电脑,这使得始终隐藏导航栏变得更加困难(如果不是不可能的话)。

0 投票
0 回答
128 浏览

android - 在虚拟键盘上按 Enter 根本不会触发任何事件

这是我的代码:

出于某种原因,这段代码在我的三星 Galaxy S3 Mini 上执行得很好,它会显示按 Enter 键的消息:“keycode: 66”

但是使用 Alcatel onetouch 时,它什么都不会干杯。对于点击返回按钮,两个设备都会显示“keycode: 4”,这很好,但在 Alcatel 上点击“enter”没有任何意义。

有任何想法吗?

0 投票
3 回答
6731 浏览

android - Android+PhoneGap: android:windowSoftInputMode 似乎不起作用

我正在开发一个基于 PhoneGap 的应用程序,并且我搜索了很多关于如何让我的 webview 在虚拟键盘出现时调整其高度,或者至少获得虚拟键盘的高度。我发现很多帖子(包括stackoverflow)说

必须在清单中设置,我做到了。我还发现对于 PhoneGap config.xml 有

设置,我也粘贴了。我还尝试了两个参数的组合值'stateVisible|adjustResize'(不仅仅是'adjustResize'),但在我看来它们都没有效果。我不知道,也许我做错了什么,但你可以从模拟器中查看截图(Android 4.0.3,但我也尝试了 4.1.2 和 4.2.2):
http ://screencast.com/ t/Mm0mw8c693 - 键盘可见
http://screencast.com/t/lZ2DomqeRR - 键盘隐藏
在屏幕截图上,我故意捕获了我的清单和 config.xml 设置,因此您可能会看到它们确实存在。
我什至录制了短视频 - http://screencast.com/t/xI9PMcMJxxx

如您所见,显示/隐藏键盘时不会发生任何视口大小调整。我还使用 console.log() 检查了 window.innerHeight ,可见键盘和隐藏键盘都保持不变。

请给我一些建议。

0 投票
4 回答
5510 浏览

android - 我无法在 Android 上隐藏虚拟键盘

我正在使用支持库处理片段并在片段中嵌套片段。

我有一个场景,我从现有片段中添加一个新片段(其中包含一个 EditText)。当用户点击 EditText 时,会显示一个虚拟键盘。但是当键盘打开时,用户可以从 ActionBar 中按下主页按钮,这会从堆栈中删除片段,但键盘仍然保持打开状态。我无法强制关闭键盘,我尝试了所有代码片段。鉴于所描述的场景,谁能指导我如何解决这个问题?

编辑:我做了一个回调函数,我从片段 onDestroy 中调用它。承载所有片段的 MainActivity 实现了这个回调:

我收到 Toast 消息,并且片段在后退按钮(ActionBar 后退按钮)上被破坏,只有键盘仍然存在。

0 投票
1 回答
1738 浏览

android - 单击虚拟键盘上的输入键后,我想显示 toast 消息

请在下面找到更新的代码。

以下是代码:

此代码仅适用于键盘单击或系统键盘单击。我想隐藏虚拟键盘并在点击 android 虚拟键盘的 enter 键时显示 toast 消息。

请帮助我。

0 投票
2 回答
1362 浏览

android - 三星软键盘在焦点更改后丢失击键

我的应用程序使用基于 PIN 的登录。我连续有四个 EditText 视图,并在每个视图上设置了以下 TextWatcher 的单独实例:

每次用户在其中一个 EditText 视图中输入文本时,TextWatcher 都会将焦点移至“下一个”视图。如果用户在最后一个上输入文本,则请求将发送到服务器。

这在我测试过的所有设备上都非常有效,除了三星 S3 和 S4。在这些设备上,当用户点击软键盘上的一个键时,焦点更改后会有半秒的延迟。结果是,如果用户点击第一个 EditText 以调出键盘,然后快速连续点击一个数字四次(例如,如果他的 PIN 为“1111”),则第一个数字被注册,焦点改变,但其他三个数字是掉了。

我进入“三星键盘设置”并禁用了预测文本、自动替换、自动大写、自动间距和自动标点符号。似乎没有什么不同。

我的 S3 和 S4 都运行 Android 4.3,所以很遗憾,我不知道这是“三星问题”还是“Android 4.3 问题”。我已经验证它不会发生在运行 4.2.2 的 Galaxy Nexus 和运行 4.4.2 的 Nexus 4 上。

对解决方法有什么想法吗?

编辑:

我在运行 Android 4.2.2 的三星 S4 上重新创建了该问题,因此它似乎是三星问题,而不是专门的 Android 4.3。这是一个说明行为的工作项目:

https://drive.google.com/file/d/0B6DvDY2BvxUTRUxZNE5DNXJJM2c

点击第一个 EditText 以调出软键盘,然后快速连续点击任意数字键四次。只有第一个水龙头会被注册。在四次点击结束时,焦点将位于第二个 EditText(从左起)。

编辑:

有关出现此问题的两部手机的更多信息:

  • S4:三星 SGH-I337,Android 4.3,内部版本:JSS15J.I337UCUEMK2,内核:3.4.0-1921628 2013 年 11 月 16 日)
  • S3:三星 SGH-I747,Android 4.3,内部版本:JSS15J.I747UCUEMJB,内核:3.0.31-2024954 2013 年 10 月 31 日)
0 投票
1 回答
232 浏览

android - 出现虚拟键盘时适配组件

我正在设计一个简单的登录活动。我使用了以下 xml 布局:

我得到了这个结果:

在此处输入图像描述

但如果重点是第一个 EditText 我得到这个:

在此处输入图像描述

如果焦点在第二个 EdiText 上,则结果如下:

在此处输入图像描述

考虑到我在 Manifest 中为我的活动使用了以下行:

我希望当虚拟键盘出现时,两个编辑文本、按钮和文本视图在可用屏幕中可见并正确居中。我必须在我的代码中更改什么?

注意:如果我删除清单中的行,我会得到相同的结果:

0 投票
1 回答
1027 浏览

android - 如何隐藏安卓软键盘?

我在 Linearlayout 中有两个 EditText 视图和一个按钮。在edittext中写入完成后,我想隐藏Android虚拟键盘,我该怎么做?