Ionic Photo Viewer无法在ios上运行

问题描述 投票:0回答:2

我正在使用Ionic Photo Viewer以全屏显示图像。我的HTML是: -

<ion-slides>
  <ion-slide col-12 *ngFor="let image of businessImages | async">
     <div class="main-slider-image" [defaultImage]="'assets/imgs/default_image_slider.png'" [lazyLoad]="image.thumb400Url" [offset]="100" (click)="openImage(image.originalUrl)">
     </div>
  </ion-slide>
</ion-slides>

在TypeScript上: -

openImage(url) {
    this.photoViewer.show(url, "", { share: false });
}

在Android上工作是这样的: -

Click here to see Android version

另一方面,在iPhone上的工作方式如下: -

Click here to see iPhone version

在iPhone上,照片查看器无法打开照片。我试过了:-

openImage(url) {
    this.photoViewer.show(url);
}

但这也行不通。如果你有任何想法如何解决这个问题请分享。谢谢

ionic-framework ionic-native photoviewer
2个回答
0
投票

至少我不得不恢复到1.1.11(从NPM找到)来正确显示IOS。对于Android,最新版本似乎有效。

在1.1.11中,分享似乎不适用于IOS。在Android最新的照片查看器插件中它似乎工作。所以现在我有:

  private viewPhoto(url: string): void {
    if (url && url != 'assets/images/profile.png') {
      this.photoViewer.show(url, '', { share: this.platform.is('android') });
    }
  }

并且..我认为讨论这些的正确的地方是https://github.com/sarriaroman/photoviewer/issues

另一件事,我正在考虑使用另一个插件,https://github.com/Riron/ionic-img-viewer。一些photoviewer问题有一个链接,但还没有尝试过。


0
投票

我有同样的错误,我解决这个问题

ionic cordova plugin rm com-sarriaroman-photoviewer
ionic cordova plugin add [email protected]
npm install --save @ionic-native/photo-viewer

在你的功能上,如果设备使用ios,则decodeURIComponent就是答案

  showImage(url,title) {
    var options = {
      share: true, // default is false
      closeButton: true, // iOS only: default is true
      copyToReference: true // iOS only: default is false
    };

    if (this.platform.is("ios")) {
      url = decodeURIComponent(url);
    }

    this.photoViewer.show(url, title, options);
  }
© www.soinside.com 2019 - 2024. All rights reserved.