Нативный компонент, использующий PDFKit, отображает пометки на экране в React Native. - PullRequest
0 голосов
/ 01 декабря 2018

Я пытаюсь реализовать нативный компонент Swift с использованием PDFKit, чтобы создать представление PDF в React Native.Но первая проблема заключается в том, что PDFView ничего не показывает, даже если файл sample.pdf находится в .xcodeproj в качестве ресурса и экземпляр pdfDocument был успешно создан.

PDFCanvasView.swift

import UIKit
import Foundation
import PDFKit

@objc(PDFCanvasView)
class PDFCanvasView: UIView {
  var pdfView:PDFView?

  override init(frame: CGRect) {
    super.init(frame: frame)

    let pdfView = PDFView(frame: frame)
    self.pdfView = pdfView
    self.addSubview(pdfView)

    if let path = Bundle.main.path(forResource: "sample", ofType: "pdf") {
      let url = URL(fileURLWithPath: path)
      if let pdfDocument = PDFDocument(url: url) {
        pdfView.displayMode = .singlePageContinuous
        pdfView.autoScales = true
        pdfView.document = pdfDocument
      }
    }
  }
}

PDFCanvasViewManager.m

#import <Foundation/Foundation.h>
#import "React/RCTViewManager.h"

@interface RCT_EXTERN_MODULE(PDFCanvasViewManager, RCTViewManager)
  RCT_EXPORT_VIEW_PROPERTY(url, NSString)
@end

Знаете ли вы, почему PDFView ничего не показывает, даже если PDFView и PDFDocument успешно инициализированы?

...