簡體   English   中英

輕按UIScrollView時,UIImageView會自動調整大小

[英]UIImageView auto resizes when UIScrollView tapped

好的,所以我在UIScrollView中有一個UIImageView。 我將圖像動態加載到UIImageView中,然后手動調整其大小。 到現在為止還挺好。 但是,如果我觸摸UIScroll滾動視圖(包含調整大小的元素),則所有內容都會重新調整為原始大小。 以防萬一,下面是調整圖像大小的代碼:

 /**
* Proportionally resize and position doodle
*/
- (void)resizeDoodle:(CGFloat)height {

self.doodleImageView.frame = CGRectMake(0, 0, self.view.bounds.size.width, height);
[self.scrollView setContentSize:self.doodleImageView.frame.size];
}
self.Imageview.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

並且這條線保持圖像適合

self.Imageview.contentMode = UIViewContentModeScaleAspectFit;

編寫以上代碼以限制您的問題。

其他方式:

使用以下方法為特定HIGHT寬度 )和圖像

+ (UIImage*)resizeImage:(UIImage*)image withWidth:(int)width withHeight:(int)height
{
    CGSize newSize = CGSizeMake(width, height);
    float widthRatio = newSize.width/image.size.width;
    float heightRatio = newSize.height/image.size.height;

    if(widthRatio > heightRatio)
    {
        newSize=CGSizeMake(image.size.width*heightRatio,image.size.height*heightRatio);
    }
    else
    {
        newSize=CGSizeMake(image.size.width*widthRatio,image.size.height*widthRatio);
    }


    UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return newImage;
}

此方法返回NewImage ,您指定了特定的大小:)
該代碼可能對您有幫助:)

暫無
暫無

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

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