keyboard

在Android和iOS上,Ionic将尝试防止键盘遮挡输入和可获得焦点的元素。 为了使这个工作,任何可获得焦点的元素必须在Scroll View或directive内,如(ionic-china中文网文档)Content,(ionic-china中文网文档)Scroll View

它还将尝试防止原生溢出滚动焦点,这可能会改变布局如推出标题和视图。

键盘处理最好与Ionic Keyboard Plugin工作,虽然它也没有那么完美。 但是,如果您用Cordova,就没有理由不用插件。

键盘显示时隐藏

需要在键盘打开后隐藏元素,只需要添加 class hide-on-keyboard-open.

<div class="hide-on-keyboard-open">
  <div id="google-map"></div>
</div>

插件用法

相关的keyboard 插件信息请看:

https://github.com/driftyco/ionic-plugins-keyboard.
http://www.ionic-china.com/doc/ngCordova/Keyboard.html.

Android 注意事项

  • 如果应用程序以全屏模式运行,即config.xml中包含<preference name="Fullscreen" value="true" />,则需要手动设置ionic.Platform.isFullScreen = true

  • 你可以配置web视图的行为,当键盘显示通过设置项目\platforms\android\AndroidManifest.xml中的android:windowSoftInputMode可用的值adjustPanadjustResizeadjustNothing调整应用程序动作。adjustResize是Ionic推荐的设置,但如果由于某种原因需要使用adjustPan,则需要设置ionic.Platform.isFullScreen = true

  <activity android:windowSoftInputMode="adjustResize">

iOS 注意事项

  • 如果您的应用程序的内容(包括标题)被上推并且在输入焦点上不可见,请尝试设置cordova.plugins.Keyboard.disableScroll(true)。 这不会禁用在Ionic滚动视图中的滚动,而是禁用由于专注于键盘下面的输入而自动发生的原生溢出滚动。