簡體   English   中英

使用圖像選擇器控制器的Swift Circle Image

[英]Swift Circle Image using image picker controller

我正在制作一個需要訪問用戶圖像庫的應用程序,當他為個人資料圖像選擇圖像時,該圖像應變為圓形。 這是問題的屏幕截圖: 在此處輸入圖片說明

以及項目中使用的示例代碼

@objc func makeImageRounded(image: UIImageView){
        image.layer.cornerRadius = image.frame.size.width / 2
        image.clipsToBounds = true
    }

調用此函數

   imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]){
            self.perform(#selector(makeImageRounded(image:)), with: profilePicture, afterDelay: 0)

    }

嘗試使用imageView寬高比= 1

func viewDidLayoutSubviews
{
    image.layer.cornerRadius = image.frame.size.width / 2
    image.clipsToBounds = true

}

並打電話

self.view.layoutIfNeeded()

您的ImageView應該具有相等的寬度和高度[200 * 200/100 * 100]

設置ImageView contenMode,ScaleToFill / AspectFill / AspectFit

image.backGroundcolor = UIColor.red // To check imageView is in Circular or not
image.layer.cornerRadius = image.frame.size.width / 2 // To get Rounded Corner

image.clipsToBounds = true // To Trim Outer frame

您的imageView是否未取整?

嘗試

image.layer.cornerRadius = image.frame.size.width / 2
image.clipsToBounds = true
self.view.layoutIfNeeded()

如果仍然無法使用,則是內容模式問題。 您可以通過設置imageView的背景色進行檢查

如果將內容模式設置為AspectFill或scaleToFill,則可以看到圖像將被填充到其邊界。

imageView.layer.cornerRadius = image.frame.size.height / 2
imageView.clipsToBounds = true
self.view.layoutIfNeeded()

暫無
暫無

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

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