Modifier par programmation la hauteur et la largeur d'une UIImageView Xcode Swift

Hey pour une raison quelconque, j'ai du mal à définir la hauteur et la largeur d'une de mes vues. Je veux le régler pour que la hauteur ne atteigne que 20% de mon écran. Je sais régulièrement ensemble, vous pouvez faire des choses comme: image = (0,0,50,50)

mais j'ai besoin que la hauteur ne soit pas un nombre statique. Quelque chose comme image = (0,0, frame.hauteur * 0.2, 50)

des suggestions?

16
demandé sur Lucas Azzopardi 2015-07-10 19:30:36

6 réponses

la réponse acceptée dans Swift 3:

let screenSize: CGRect = UIScreen.main.bounds
image.frame = CGRect(x: 0, y: 0, width: 50, height: screenSize.height * 0.2)
29
répondu user1333394 2017-02-08 17:15:14
let screenSize: CGRect = UIScreen.mainScreen().bounds
image.frame = CGRectMake(0,0, screenSize.height * 0.2, 50)
20
répondu Aggressor 2015-07-10 16:41:11

Hey j'ai compris peu de temps après. Pour une raison quelconque, j'avais juste un pet dans le cerveau.

image.frame = CGRectMake(0 , 0, self.view.frame.width, self.view.frame.height * 0.2)
4
répondu Lucas Azzopardi 2016-07-26 12:31:42

u peut utiliser ce code

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

ou

var imageView = UIImageView(frame:CGrectMake(x,y, self.view.frame.size.width *0.2, 50)
2
répondu Konstantin Kryzhanovsky 2015-07-10 16:46:10

en utilisant autoview

image.heightAnchor.constraint(equalToConstant: CGFloat(8)).isActive = true
1
répondu mamu 2018-06-01 14:46:05

imageView est une sous-vue de la vue principale. Il fonctionne de cette façon

image.frame = CGRectMake(0 , 0, super.view.frame.width, super.view.frame.height * 0.2)
0
répondu Dennis 2018-03-05 10:50:55