Ионная клавиатура близко не сработала - PullRequest
0 голосов
/ 11 июня 2018

Я пытаюсь закрыть клавиатуру, когда пользователь прокручивает приложение.Это код:

.html

<ion-content class="maincontent" (ionScrollStart)="scrollStart()">
  <router-outlet></router-outlet>
</ion-content>

.ts

scrollStart() {
  Keyboard.close();
}

Событие ionScrollStart работает нормально, и я добавил правильные зависимости вКлавиатура работает.Есть идеи?

Ответы [ 4 ]

0 голосов
/ 19 октября 2018

У меня была та же ошибка, объяснение, которое я могу придумать, состоит в том, что событие keyboard.close () было теперь изменено на keyboard.hide ()

0 голосов
/ 11 июня 2018

Плагин клавиатуры не работает в ионном режиме (по крайней мере, бесплатная версия).

, чтобы получить событие открытия / закрытия клавиатуры, сделайте так:

import {NgZone} from '@angular/core';
public IsKeyboardOpen:boolean=false;
    constructor(public ngZ:NgZone)
    {
        var innerHeight=window.innerHeight;
        window.onresize = (e) =>
       {
        this.ngZ.run(() => 
        {
          if(window.innerHeight< innerHeight)
          {
            this.IsKeyboardOpen=true;
          }
          else
          {
            this.IsKeyboardOpen=false;
          }
        });
    };
    }

, чтобы закрыть экранную клавиатуру, сфокусируйтесь на любом другом элементе, который не вводится, например:

func()
{
   this.myButton.setFocus();
}
0 голосов
/ 11 августа 2018

Включить public keyboard: Keyboard на вашу страницу constructor.Тогда вы можете позвонить this.keyboard.close();.

0 голосов
/ 11 июня 2018

установить плагины

ionic cordova plugin add ionic-plugin-keyboard
npm install --save @ionic-native/keyboard

добавить в app.module.ts

import { Keyboard } from '@ionic-native/keyboard';

@NgModule({
  ...

  providers: [
    ...
    Keyboard
    ...
  ]
  ...
})

используя в ts:

import { Keyboard } from '@ionic-native/keyboard';

constructor(private keyboard: Keyboard) { }

scrollStart() {
   this.keyboard.close();
}

Посмотреть Документация

...