######下の画像のように背景に指定した画像が繰返し表示されます。
######実現したいこと
①リサイズして1つだけ表示したい。(画像がわかりやすくCGSize(width: 300, height: 300)を指定しています)
②余白は白色にしたい。
######試したこと
UIImageViewにしてサイズを調整して表示すると「余白部分がクリックできない」ので諦めました。
######心当たり
self.view.backgroundColor = UIColor(patternImage: Image)で表示するモードが決まる?
どなたかご教授お願いします。
swift
1class ViewController: UIViewController { 2 3 override func viewDidLoad() { 4let a = CGSize(width: 300, height: 300) 5 var Image = UIImage(named: "test")! 6 Image = Image.resize(size: a)! 7 self.view.backgroundColor = UIColor(patternImage: Image) 8 9 } 10} 11extension UIImage { 12 func resize(size _size: CGSize) -> UIImage? { 13 let widthRatio = _size.width / size.width 14 let heightRatio = _size.height / size.height 15 let ratio = widthRatio < heightRatio ? widthRatio : heightRatio 16 17 let resizedSize = CGSize(width: size.width * ratio, height: size.height * ratio) 18 19 UIGraphicsBeginImageContextWithOptions(resizedSize, false, 0.0) // 変更 20 draw(in: CGRect(origin: .zero, size: resizedSize)) 21 let resizedImage = UIGraphicsGetImageFromCurrentImageContext() 22 UIGraphicsEndImageContext() 23 24 return resizedImage 25 } 26} 27
回答1件
あなたの回答
tips
プレビュー