Ionic 3 Keyboard не работает правильно на ионный колонтитул только IOS - PullRequest
0 голосов
/ 10 октября 2018

Видео выпуска:

https://imgur.com/a/PRLPJYw

Описание:

При открытии клавиатуры исчезают все элементы нижнего колонтитула иона.Простое нажатие на поле заставит его появиться снова.Проверьте видео.ЭТО НЕ ПРОИСХОДИТ НА Android.Только на симуляторе iOS и реальном устройстве. Кроме того, если вы используете режим разработки Safari и проверяете элементы, любая модификация CSS через Safari заставит нижний колонтитул снова выглядеть хорошо.Кажется, это первоначальный чертеж, который ломается.

То, что я пробовал:

Добавление в config.xml <preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine" /> Так что ionic использует UIWebView вместо WKWebView.Это работает, но приложение работает очень медленно, и другие вещи не работают должным образом, так как приложение было создано с использованием WKWebView.

Другая вещь, которая работает, - это переход на старую Cordova Ionic Keyboard (не рекомендуется), но при закрытии клавиатурывсе действия (нажатие кнопок, навигация и т. д.) перестают работать в приложении ...

Попытка принудительного повторного рендеринга CSS / HTML при открытии клавиатуры, игра с фокусировкой поля и переключение между различными версиями плагина.Никто не работал.

Настройка кода:

<ion-footer *ngIf="chatSession && chatSession.IsComplete != 'True'" >
<ion-toolbar  color="white" style="border-top: 1px solid #4a87ee; min-height: 45px !important">
  <ion-grid no-padding>
    <ion-row>
        <ion-col col-1 style="margin:auto">
            <ion-icon style="padding: 5px;" name="menu" class="icon-chat" (click)="openCannedMessages()"></ion-icon>
          </ion-col>
          <ion-col col-9 style="margin:auto">
              <ion-textarea #inputRef [(ngModel)]="chatText" 
              name="chat" id="chattextarea" autocorrect="on" class="chat-area" style="padding: 0px; margin:0px" [placeholder]="this.placeholderText" ></ion-textarea>
            </ion-col>
          <ion-col col-2 style="margin:auto">
            <button ion-button outline class="btn-send" (click)="actionChat(inputRef)" style="margin: 0px; font-size: 16px;">
              <ion-label >Send</ion-label>
            </button>
          </ion-col>
    </ion-row>
  </ion-grid>
</ion-toolbar>
</ion-footer>

Ионная информация:

"@ionic-native/keyboard": "^4.15.0", <plugin name="cordova-plugin-ionic-keyboard" spec="^2.1.3" />

Ionic:

   ionic (Ionic CLI)  : 4.1.2 (/usr/local/lib/node_modules/ionic)
   Ionic Framework    : ionic-angular 3.9.2
   @ionic/app-scripts : 3.1.11

Cordova:

   cordova (Cordova CLI) : 7.1.0
   Cordova Platforms     : ios 4.5.5
   Cordova Plugins       : cordova-plugin-ionic-webview 2.1.4, (and 10 other plugins)

System:

   ios-deploy : 1.9.2
   ios-sim    : 6.1.2
   NodeJS     : v8.5.0 (/usr/local/bin/node)
   npm        : 6.1.0
   OS         : macOS High Sierra
   Xcode      : Xcode 10.0 Build version 10A255
...