我知道这里有很多类似的问题 但是我无法获得任何在简单示例应用中使用的提供的解决方案. 首次显示软键时,就会发生问题.一旦显示出来,只有按下 deDittext 再次使其可编辑. 尝试以下内容: android:windowSoftInputMode="adjustPan|adjustResize" 这没有解决任何问题.在软键板弹出之后,这条线似乎必须使该活动调整大小.不幸的是,这也导致任何 EditTexts 失去专注力.这可能是 listView 本身在调整过程之后获得重点.所以我尝试了以下解决方法: listView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS); 这始终会导致第一个可见的Edittext ListView包含的焦点,这是不希望的.第二行中的第二个诚意应在按下时获得焦点,这不会发生.另外,如果我最终设法集中了另一个EditText另一个EditText另一个
以下是关于 android-softkeyboard 的编程技术问答
当用户单击EDITTEXT以外的其他任何地方时,我需要将SoftKeyPad隐藏在Android中. iPhone有很多帮助,但对于Android没有帮助.我尝试了此代码,但不起作用:( final RelativeLayout base = (RelativeLayout) findViewById(R.id.RelativeLayout1); findViewById(R.id.base).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWind
我使用以下代码弹出我的活动中的软输入键盘 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.getInputMethodList(); imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); 这显示了字母键盘. ,但我想显示数字键盘. 请注意,我知道,使用setInputType()与EditText或TextView一起使用时可以使用,但我希望能够在没有输入区域(例如EditText)的情况下显示键盘,并只需收听键盘上的键盘即可. 任何人都可以确认是否可能,如果是这样,怎么能实现? 解决方案 尝试使用" onkeydown"方法,我使用它们来捕获应用程序中的电话上的" back"硬键,该方法的示例,使用back作为侦听的按钮,将是 pu
我正在使用正在使用的电话隙应用程序问题.我的应用程序有很多表格,因为该应用程序的目的主要是为数据库提供一个不错的用户界面.但是,每当用户尝试编辑靠近底部的输入字段时,Android键盘就会弹出并覆盖该字段,以使用户看不到他/她正在写的内容. 您知道是否有解决方法?有人在他们的应用程序上遇到这个问题吗? 解决方案 在这种情况下,您可以做什么(我在遇到此问题时所做的工作...):在字段上添加对焦事件,然后滚动文档.因此,您将在页面顶部看到输入字段:) 其他解决方案 我同意保利乌斯,因为Android我发现这是最干净的解决方案. 我知道这是一个古老的问题,但是如果任何身体仍在面对这个问题,我将分享我的解决方案. // fix keyboard hiding focused input texts // using native keyboard plugin and move.min.js // https://github.com/vitohe/ionic-plu
是否有一种方法可以强制键盘显示其整个屏幕输入(顺便说一句,这是如何正确调用的?).我说的是当您没有足够的空间(或至少在设备决定时)出现的那个,例如此图片上的白色输入: 我希望它甚至在应用程序的肖像屏幕上. 我一直在搜索此问题,但是很难搜索您不知道它是如何称呼的东西. 编辑:我忘了告诉,这应该在Cordova应用程序中起作用. 解决方案 使用此 inputMethodManager im =(inputmethodmanager)getSystemservice(context.input_method_service); Inm.showsoftInput(AutoSuggestionTextView,InputMethodManager.show_implitic);
我刚刚开始使用Maqetta创建一个移动应用程序,用于Android和Windowsphone上的电话盖.该应用程序包括一些带有文本输入的网页,因此我需要软键盘来工作. 我的问题是键盘在两个操作系统上的反应完全不同.在Windows Phone上,当我单击文本框时,键盘显示并覆盖其下面的所有内容.要到达其他文本框,我仍然可以在显示我的网站的字段中滚动并选择它.此外,这对我来说非常重要,网站没有被压缩.那正是我想要的. 在Android上,情况有些复杂.经过大量研究后,我偶然发现了这些人: android:windowsoftinputmode =" Adjustresize"和 android:windowsoftinputmode =" awadpan" 我曾尝试过两者,但两者都不适合我的需求. Adjustrezise压缩了我的网站(因为网站为高度:100%),并且Adjudpan覆盖了它的所有内容,而无需任何可能到达它(除了关闭键盘并重新打开每个文本框//重
我在软键板上工作,我需要在键上显示文本 下面由红色块 显示 给定 in此参考 protected void onDraw(Canvas canvas) { if (canvas != null) { super.onDraw(canvas); } Paint paint = new Paint(); paint.setTextSize(15); paint.setColor(Color.RED); int x2 = 0; int y2 = 0; int width = 0; List keys = SoftKeyboard.currentKeyboard.getKeys(); for(Key key: keys) { if(key.codes[0] == 113
这让我发疯,我在任何地方都找不到答案. 我的电话盖应用程序中有表单.如果输入类型=" text",则文本键盘弹出," go"显示在角落.当您单击GO时,它会提交表格.一切都按照我的期望.但是,如果我使用输入type =" number",则数字键盘将弹出," Next"显示在角落.当您单击下一步时,如果在按钮标签之前有另一个输入框,则将转到该输入.没关系. . .不是理想的,但很有意义.但是,如果这是页面上的最后一个输入字段,请单击" Next"一无所有.它不会关注按钮(即使使用Tabindex)也不会提交表单(理想). 我正在使用PhoneGap 1.3.0和jQuery 1.7如果有帮助. 好的 这是一个可怕的黑客,我在这一点上正在经历一些副作用,但无论如何,这是一个小的飞跃. 在您的表单中添加一个不可见的文本输入,该表单在收到焦点后立即自动提交.由于它只能从用户按下"下一个"或从最后一个数字字段中获得焦点,因此在用户序列中应该有一个相当可靠的逻辑.
我有一个cordovawebview,呈现一些HTML表格.当我专注于输入字段时,Android的软键盘会弹出,并且对于某些字段,根据其位置,它就可以在其顶部.基本上,它没有调整Cordovawebview的布局. 无论我做什么,我都无法更改它,据说这与Cordovawebview处于全屏模式的事实有关. 我该如何解决这个问题? ps:是错误吗? 谢谢大家! 解决方案 实际上,这是一个众所周知的错误,正如 @user2493245所说.但是我发现了一个解决方法,至少关于我的具体情况. 在WebView上,只需检查视图可见区域的坐标即可. final View activityRootView = this.root; activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() { public void onG
我正在尝试检测showKeyboard和hidekeyboard电话盖上的事件.为此,在deviceready事件上,我放置了以下代码: bindEvents: function() { document.addEventListener('deviceready', this.onDeviceReady, false); }, // deviceready Event Handler // // The scope of 'this' is the event. In order to call the 'receivedEvent' // function, we must explicity call 'app.receivedEvent(...);' onDeviceReady: function() { document.addEventListener("menubutton",app.onMenuKeyPress,false); docum
我有一个由React Antial构建的Android应用. 该应用具有文本输入和提交按钮. 在文本输入中键入时,默认键盘开始建议单词(不确定该功能是如何称为 - 自动完成或预测的文本). 单击提交时,将存储数据,并通过文本输入的" clear()"方法清除文本输入.例如: this.refs.textInput.clear(); 由于某种原因," clear()"方法被调用后未清除"预测文本".结果,当用户再次开始键入时,预测文本将继续从停止的位置,用户必须清除文本输入. 注意:文本输入是多行.不确定是否与问题有关. 这是同一问题的示例: 有关更多详细信息,请参见附件图: 解决方案 我找到了一个解决方案: 在提交时,我更改键盘并将其恢复为以下代码. this.refs.textInput.setNativeProps({keyboardType:"email-address"}); this.refs.textInput.setNativePr
在添加一些自定义代码以获取键触摸的压力值之后,我正在尝试从5.0.2分支构建AOSP键盘.我正在使用lunch full-eng来构建源并使用mm添加了更改后构建拉丁时段. 然后,我在删除了先前的版本后将拉丁语推到我的Galaxy S3上的/system/apps/.我正在设备上运行CM12 5.0.2的非官方版本. 我得到的错误在下面,这似乎与我的代码更改无关,但更有可能在我构建应用程序的方式上. E/AndroidRuntime(12198): FATAL EXCEPTION: main E/AndroidRuntime(12198): Process: com.android.inputmethod.latin, PID: 12198 E/AndroidRuntime(12198): java.lang.RuntimeException: Unable to get provider com.android.inputmethod.dictionarypack.D
从iOS 5开始,键盘现在可以是基于输入语言的可变高度.特别是中文现在包括键盘上方的自动完成部分,与您在Android中看到的非常相似.该自动完成部分增加了键盘的测量高度. 由于用户单击"世界"键,键盘何时更改尺寸的何时会订阅和/或接收通知?请注意,这与获取有关键盘的通知(键盘WillShow)不同.在这种情况下,它们已经启动了,由于用户交互的结果,它的尺寸只是在更改. 谢谢! 解决方案 当输入方法更改时,尽管键盘已经存在,iOS仍将发送通知uikeyboarddidshownotification,因此请注册此通知,并通过useInfification在通知中使用键uikeyboardframeEnduserInfokey中的userInfo更改,然后您可以将元素转播取决于键盘大小. 更多详细信息,阅读此博客文章: (英语)当输入中文在iOS 5 (中文)如何ios 5 ios5中文键盘的/p>