Ionic — на IOS кнопка оплаты Stripe скрыта клавиатурой

#ios #cordova #ionic-framework #ionic2 #stripe-payments

#iOS #кордова #ionic-framework #ionic2 #stripe-платежи

Вопрос:

Мое приложение интегрируется с Stripe для целей оплаты, но у меня проблема с IOS… Люди не могут платить.

Кнопка оплаты наведена на клавиатуру, и нет кнопки для ее закрытия, как на Android.

Я также не могу добиться прокрутки всплывающего окна.

Я использую пользовательскую интеграцию и не нашел ничего, что могло бы мне помочь… Кроме создания всего с нуля с помощью настраиваемой модальной и пользовательской формы. И я действительно не хочу этого делать.

введите описание изображения здесь

Вы можете увидеть крошечную верхнюю строку синей кнопки под клавиатурой… Это то, что мы хотим нажать !

Ответ №1:

Установите плагин cordova keyboard и в вашем app.component.ts добавьте это:

 this.platform.ready().then(() => {
  ...
  this.keyboard.hideFormAccessoryBar(false); // Hide the keyboard accessory bar with the next, previous and done buttons.
  ...
});
  

Затем, когда появится клавиатура, у вас будет хорошая опция «Готово», чтобы закрыть ее.
Это должно помочь вашему клиенту завершить оплату.

Комментарии:

1. Это может быть хорошим способом сделать это! В настоящее время я заменил Stripe Checkout на Stripe Elements для IOS, но обязательно попробую протестировать ваше решение в ближайшие дни.

2. Хорошо работает как быстрое решение. Вот версия конденсатора: импортируйте {плагины } из ‘@capacitor / core’; const { Keyboard } = плагины; … this.platform.ready().then(() => { … Keyboard.setAccessoryBarVisible({isVisible: true}); });

Ответ №2:

Это в веб-представлении? Stripe не всегда работает так, как вы ожидаете в webview. Возможно, вам потребуется создать свою форму с элементами, а не оформлять заказ.

Комментарии:

1. Это то, чего я боялся… Спасибо за ваш ответ. Все еще надеюсь, что кто-нибудь покажет волшебный трюк из шляпы, иначе мне придется идти более длинным путем.