0

別のクラスをインポートするクラスがあり、このクラスのプロパティにアクセスしようとしていますが、値にメンバーがないというエラーが表示されます。私に何ができる?

エラーは self.cachedImageView で発生します

ライブラリのクラス:

 #import "JSQPhotoMediaItem.h"


 @interface JSQPhotoMediaItem ()

 @property (strong, nonatomic) UIImageView *cachedImageView;

 @end


 @implementation JSQPhotoMediaItem

そして実装方法は続きます。

私のクラスがcachedImageViewにアクセスしようとしています

 override func mediaView() -> UIView? {

    if !self.hasFile {
        return nil
    }

    if self.cachedImageView == nil {
        let size = self.mediaViewDisplaySize()

        let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: size.width, height: size.height))
        let lightGrayColor = UIColor.jsq_messageBubbleLightGray()
        imageView.backgroundColor = UIColor.jsq_messageBubbleLightGray()
        imageView.image = UIImage(named: "file_placeholder")?.jsq_imageMasked(with: lightGrayColor.jsq_colorByDarkeningColor(withValue: 0.4))
        imageView.contentMode = UIViewContentMode.center

        let RightMargin = CGFloat(10)
        let BottomMargin = CGFloat(20)

        self.label.frame = CGRect(x: 0, y: 0, width: imageView.frame.width / 2, height: 20)

        let point = CGPoint(x: 1.5 * imageView.center.x - RightMargin, y: imageView.frame.height - BottomMargin)
        self.label.center = imageView.convert(point, from: imageView.superview)
        self.label.textColor = UIColor.lightGray
        self.label.textAlignment = NSTextAlignment.right
        self.label.font = UIFont(name: "Helvetica", size: 14.0)
        imageView.addSubview(label)

        JSQMessagesMediaViewBubbleImageMasker.applyBubbleImageMask(toMediaView: imageView, isOutgoing: self.appliesMediaViewMaskAsOutgoing)

        self.cachedImageView = imageView
    }

    return self.cachedImageView
}
4

1 に答える 1