问题
Hey for some reason I am struggling with trying to set the height and width of one of my image views. I want to set it so the height only goes for 20% of my screen. I know to regularly set it you can do things like: image = (0,0,50,50)
But I need the height to not be a static number. Something like image = (0,0, frame.height * 0.2, 50)
Any suggestions?
回答1:
The accepted answer in Swift 3:
let screenSize: CGRect = UIScreen.main.bounds
image.frame = CGRect(x: 0, y: 0, width: 50, height: screenSize.height * 0.2)
回答2:
let screenSize: CGRect = UIScreen.mainScreen().bounds
image.frame = CGRectMake(0,0, screenSize.height * 0.2, 50)
回答3:
Using autoview
image.heightAnchor.constraint(equalToConstant: CGFloat(8)).isActive = true
回答4:
Hey i figured it out shortly after. For some reason I was just having a brain fart.
image.frame = CGRectMake(0 , 0, self.view.frame.width, self.view.frame.height * 0.2)
回答5:
u can use this code
var imageView = UIImageView(image: UIImage(name:"imageName"));
imageView.frame = CGrectMake(x,y imageView.frame.width*0.2,50);
or
var imageView = UIImageView(frame:CGrectMake(x,y, self.view.frame.size.width *0.2, 50)
回答6:
imageView is a subview of the main view. It works this way
image.frame = CGRectMake(0 , 0, super.view.frame.width, super.view.frame.height * 0.2)
来源:https://stackoverflow.com/questions/31345903/programmatically-change-the-height-and-width-of-a-uiimageview-xcode-swift