[英]UIImageView.image setter
我以這種方式制作了兩個側視圖:containerView-兩個視圖的容器firstView-由UIImageView構成的可見視圖secondView-翻轉后可見的視圖
現在,我將使用SDWebImage庫的方法下載異步圖像以顯示在firstView上:
[view.imageView setImageWithURL:[NSURL URLWithString:item.image]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
圖像可以是水平或垂直的。 現在,我希望secondView與顯示的圖像具有相同的大小。 我正在考慮在UIImageView自定義設置器中設置它,但我不知道如何獲取該方法。 也許還有其他想法嗎?
編輯:
圖片
我想我知道該怎么做。 我現在需要的是UIImageView.image的實際可見大小。
如果您很樂意將AVFoundation
導入到項目中,則可以使用便捷功能AVMakeRectWithAspectRatioInsideRect
,該功能可以獲取圖像大小和圖像視圖框架,並為您提供顯示圖像的大小。
您顯然可以自己編寫一些代碼,使用一點數學即可計算出相同的值。
為正在下載的圖像創建一個property
。 然后為此property
創建一個自定義setter
-在這里更新您的secondImageView
大小。
這樣,每次imageBeingDownloaded
完成下載時-它將設置圖像-然后將更新secondImageView size
即
在執行文件中
@property (nonatomic, weak) UIImage *imageBeingDownloaded; // creates the property
// The custom setter
- (void)setImageBeingDownloaded:(UIImage *)imageBeingDownloaded {
_imageBeingDownloaded = imageBeingDownloaded;
self.secondImageView.size = _imageBeingDownloaded.size; // each time the image is set this will update secondImageView
}
然后
[view.imageView setImageWithURL:[NSURL URLWithString:item.image] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
變
[self.imageBeingDownloaded setImageWithURL:[NSURL URLWithString:item.image] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.