2015-07-10 2 views
10

Эй почему-то я борюсь с попыткой установить высоту и ширину одного из моих изображений. Я хочу установить его так, чтобы высота отображалась только на 20% экрана. Я знаю, чтобы регулярно его устанавливать, вы можете делать такие вещи, как: image = (0,0,50,50)Программно изменить высоту и ширину UIImageView Xcode Swift

Но мне нужна высота, чтобы не быть статическим числом. Что-то вроде изображения = (0,0, frame.height * 0,2, 50)

Любые предложения?

ответ

18

Принятый ответ в Swift 3:

let screenSize: CGRect = UIScreen.main.bounds 
image.frame = CGRect(x: 0, y: 0, width: 50, height: screenSize.height * 0.2) 
+0

человек, спасибо вам, что изображение на экране фиксированное изображениеНеобходимое правило .scaleAspectFit – fullMoon

3

Эй, я понял это вскоре. По какой-то причине у меня просто был мозговой пердит.

image.frame = CGRectMake(0 , 0, self.view.frame.width, self.view.frame.height * 0.2) 
19
let screenSize: CGRect = UIScreen.mainScreen().bounds 
image.frame = CGRectMake(0,0, screenSize.height * 0.2, 50) 
+2

Вы можете сделать код выше это wayy слишком 'image.frame = CGRect (0,0, screenSize.height * 0,2, 50) 'Разница заключается в том, что таким образом она выглядит более быстрые. CGRectMake - это Objective-C style – Suhaib

2

и может использовать этот код

var imageView = UIImageView(image: UIImage(name:"imageName")); 
imageView.frame = CGrectMake(x,y imageView.frame.width*0.2,50); 

или

var imageView = UIImageView(frame:CGrectMake(x,y, self.view.frame.size.width *0.2, 50) 
0

изображение Вид является подпунктом основного вида. Он работает таким образом

image.frame = CGRectMake(0 , 0, super.view.frame.width, super.view.frame.height * 0.2)