簡體   English   中英

Swift等效於CGImage的UIImage嗎?

[英]Swift equivalent for UIImage with CGImage?

以下表達式的Swift等效項是什么?

@property (strong, nonatomic) NSMutableArray *assets;

cell.imageView.image = [UIImage imageWithCGImage:[[self.assets objectAtIndex:indexPath.row] thumbnail]];

我試過了:

private var assets: [AnyObject]

cell.imageView.image = UIImage(CGImage: self.assets[indexPath.row].thumbnail())

但這給出了錯誤:

Missing argument for parameter 'inBundle' in call

編輯: self.assets具有來自以下表達式的對象:

ALAssetsGroupEnumerationResultsBlock assetsEnumerationBlock = ^(ALAsset *result, NSUInteger index, BOOL *stop) {

        if (result) {
            [self.assets insertObject:result atIndex:0];
        }

    };

像這樣聲明屬性:

var assets: [ALAsset]

然后,在某些方法的實際代碼中:

let thumb = self.assets[indexPath.row].thumbnail().takeUnretainedValue()
cell.imageView.image = UIImage(CGImage:thumb)

在屬性聲明中,我向編譯器說明了這實際上是一個數組。 否則,不知道thumbnail()是一個真正的方法,也不知道它返回的是哪種類型的東西。

在實際代碼的第一行中,我要處理的事實是AssetLibrary框架沒有內存管理信息。 除非您以某種方式解決此問題,否則您無法在Swift中繼續進行。

因此,到下一行,我們有了一個實際的CGImage,可以繼續使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM