Worklight/Dojo - 键盘隐藏输入字段

Posted

技术标签:

【中文标题】Worklight/Dojo - 键盘隐藏输入字段【英文标题】:Worklight/Dojo - Keyboard hides input field 【发布时间】:2014-03-26 11:25:21 【问题描述】:

在我的应用程序中,屏幕底部有一个搜索框。

当用户关注输入字段时,键盘会出现,但输入字段现在隐藏在键盘后面。一旦用户开始输入,只有输入字段可见 - 但只有输入字段的一半。

这个问题只发生在 android...

  <div id="HomeScreen"   data-dojo-type="dojox.mobile.View" data-dojo-props="selected: false">
  <div class="header">
     <div class="header_name">
        <div id="header_menu_panel">
           <div id="menu" class="menu_field"><img src="images/menu.png"></div>
           <div id="like" class="menu_field"><img src="images/like.png"></div>
        </div>
     </div>
  </div>
  <div id="_ddPanel">

     <div id="ddPanel" data-dojo-type="dojox.mobile.ScrollableView">
     <form action="" id="ddPanelForm">
        <div id="dropdown_panel">
           <div id="dd1" class="dropdown_fld">
              <span class="blue_text">drop1</span><br/>
              <select id="industry_dropdown">
                 <option value="0">Select</option>
              </select>
           </div>
           <div  id="dd2" class="dropdown_fld">
              <span class="blue_text">drop2</span><br/>
              <select id="sa_dropdown">
                 <option value="Select">Select</option>
              </select>
           </div>
           <div id="dd3" class="dropdown_fld">
              <span class="blue_text">drop3</span><br/>
              <select id="kpi_dropdown">
                 <option value="Select">Select</option>
              </select>
           </div>
           <br/>
        </div>
        <div   class="h_center" style="text-align: center;"><input type="submit" id="option_search_sbumit"  value="Submit"/></div>
        <div id="Subdrivers"></div>
        </form>
     </div>

  </div>
  <form action="" id="mainSearchForm">
  <table id="search_panel">
     <tr>
        <td>
           <input type="search" id="search_input_field"  />
        </td>
        <td ><input type="submit" value="" id="search_button" /></td>
     </tr>
  </table>
  </form>

【问题讨论】:

能贴出代码吗? 并告诉它发生在哪个版本的android 设备上(除非它是模拟器)? @PatrickRuzand,它发生在所有安卓设备上...... @nspeete 代码粘贴在这里
在运行 Android 4.4.2 的 Android 设备上测试了代码。我将搜索框放在屏幕底部,然后键盘出现在焦点上并将其上方的表单域移动,完全可见。在您的情况下,您可以点击(并可能拖动)键盘上方的主视图以完整查看表单吗? 【参考方案1】:

根据我在以下问题中的回答,我认为这根本不是 Dojo 或 Worklight,而是 Android 中虚拟键盘在 Web 应用程序中的行为。

请查看:How to auto-scroll to input field in Android when the soft keyboard overlaps them on showing?

以下是一些建议的解决方案:

Textbox hidden below keyboard in Android webview html textfield in WebView in an Android application is hidden by the soft keyboard Keyboard hiding EditText when android:windowTranslucentStatus=true 您也可以使用iScroll.js(精简版) - 或通过捕获焦点事件自行实现 - 向上滚动特定数量的像素。

【讨论】:

以上是关于Worklight/Dojo - 键盘隐藏输入字段的主要内容,如果未能解决你的问题,请参考以下文章

Worklight 6 + Dojo 丢失文件错误

Worklight dojo 标题标签重复

将网页输入字段滚动到顶部防止被软键盘隐藏

iPad键盘隐藏时不会触发输入字段模糊事件?

Python Kivy:在文本输入字段中隐藏虚拟键盘

当软键盘出现在phonegap中时隐藏输入字段