【问题标题】:Ionic 4 Popover, Alertsheet etc... on iOS scrolls back content and not the popover itselfIonic 4 Popover、Alertsheet 等在 iOS 上滚动回内容而不是弹出框本身
【发布时间】:2020-04-13 02:10:32
【问题描述】:

希望大家今天过得愉快。

我在带有 ActionSheets 和 Popover 的 iOS 上遇到问题,当出现一个弹出框时,用户可以在弹出框内滑动时滚动,如果我点击外部,它会滚动我打开弹出框的后面内容弹出框它关闭了弹出框并且它根本不允许我滑动但是当我在弹出框内单击时它会滚动弹出框的后面内容而不是弹出框本身。

这是一个视频: 抱歉没有上传视频的选项,这是一个链接: Video of popover/actionsheet

这是打开弹窗的代码

async openCreateNewFolder(type, folder?) {
    const popover = await this.popoverController.create({
      component: NewFolderComponent,
      componentProps: {
        folderId: this.folderId,
        parentId: this.parentId,
        type,
        folder
      }
    });
 
    popover.onDidDismiss().then((dataReturned) => {
      console.log(dataReturned);
      if (dataReturned.data !== undefined) {
        if (dataReturned.data === 'cancelClicked') {

        } else if (dataReturned.data === 'confirmClickedFolder') {
          this.deleteFolder(dataReturned.role);
        } else if (dataReturned.data === 'confirmClickedFile') {
          this.deleteFile(dataReturned.role);
        } else if (dataReturned.data === 'newFolderCreated') {
          this.getFolders();
        }
        // this.dataReturned = dataReturned.data;
        //alert('Modal Sent Data :'+ dataReturned);
      }
    });
 
    return await popover.present();
  }

这是操作表的代码:

async confirmChangeLanguageDialogue(selectedLanguage) {
let languageClass: any;
if (selectedLanguage === 'English') {
  languageClass = 'alertControllerEnglishLanguageIcon';
} else if (selectedLanguage === 'Deutch') {
  languageClass = 'alertControllerGermanLanguageIcon';
} else if (selectedLanguage === 'French') {
  languageClass = 'alertControllerFrenchLanguageIcon';
} else if (selectedLanguage === 'Italian') {
  languageClass = 'alertControllerItalianLanguageIcon';
}
const alert = await this.alertCtrl.create({
  header: this.translate.instant('confirm'),
  mode: 'ios',
  message: this.translate.instant('change_language_confirm_message', {selected_language: selectedLanguage}),
  buttons: [
    {
      text: this.translate.instant('cancel'),
      role: 'cancel',
      cssClass: 'secondary',
      handler: (blah) => {
        console.log('Confirm Cancel: blah');
      }
    }, {
      text: this.translate.instant('okay'),
      cssClass: languageClass,
      handler: () => {
        this.requestChangeLanguage(selectedLanguage);
      }
    }
  ]
});

await alert.present();
const result = await alert.onDidDismiss();
console.log(result);

} 如有任何帮助,将不胜感激。

【问题讨论】:

    标签: ios ionic-framework popover ionic-native actionsheet


    【解决方案1】:
    猜你喜欢
    • 2020-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-28
    • 2020-09-09
    • 2014-02-26
    • 2012-06-15
    • 2018-11-10
    相关资源
    最近更新 更多