如何更改UIView大小?

我在启动时修改我的UIView高度有问题。

我必须UIView,我想要一个屏幕大小* 70和其他填补空白。

这是我的

@IBOutlet weak var questionFrame: UIView! @IBOutlet weak var answerFrame: UIView! let screenSize:CGRect = UIScreen.mainScreen().bounds 

  questionFrame.frame.size.height = screenSize.height * 0.70 answerFrame.frame.size.height = screenSize.height * 0.30 

它在运行时对应用程序没有影响。 我使用自动布局,但我只有边缘限制…

我做错了吗?

干得好。 这应该工作。

 questionFrame.frame = CGRectMake(0 , 0, self.view.frame.width, self.view.frame.height * 0.7) answerFrame.frame = CGRectMake(0 , self.view.frame.height * 0.7, self.view.frame.width, self.view.frame.height * 0.3) 

您好创build此扩展如果你想。 更新2015 Swift 2.0

创build文件Extends.Swift添加此代码(添加导入基础 ,您要更改高度)

 /** Get Set x Position - parameter x: CGFloat by DaRk-_-D0G */ var x:CGFloat { get { return self.frame.origin.x } set { self.frame.origin.x = newValue } } /** Get Set y Position - parameter y: CGFloat by DaRk-_-D0G */ var y:CGFloat { get { return self.frame.origin.y } set { self.frame.origin.y = newValue } } /** Get Set Height - parameter height: CGFloat by DaRk-_-D0G */ var height:CGFloat { get { return self.frame.size.height } set { self.frame.size.height = newValue } } /** Get Set Width - parameter width: CGFloat by DaRk-_-D0G */ var width:CGFloat { get { return self.frame.size.width } set { self.frame.size.width = newValue } } 

使用(inheritanceUIView)

 inheritsOfUIView.height = 100 button.height = 100 print(view.height) 

这可以通过Swift 3.0 Worked on Latest version (2017年8月 – 2017年)的各种方法来实现

直接为视图指定高度和宽度值:

 userView.frame.size.height = 0 userView.frame.size.width = 10 

为框架分配CGRect

 userView.frame = CGRect(x:0, y: 0, width:0, height:0) 

方法详情:

CGRect(x:X的点,y:Y的点,宽度:视图的宽度,高度:视图的高度)

对CGRECT使用扩展方法

在任何swift文件中添加下面的扩展代码,

 extension CGRect { init(_ x:CGFloat, _ y:CGFloat, _ w:CGFloat, _ h:CGFloat) { self.init(x:x, y:y, width:w, height:h) } } 

在应用程序中的任何位置使用以下代码来设置尺寸参数

 userView.frame = CGRect(1, 1, 20, 45) 

Swift 3:

 myView.frame = CGRect(x: 0, y: 0, width: 0, height: 0) 

你可以在Interface Builder中做到这一点:

1)控制 – 从框架视图(例如,问题框)拖动到主视图,在popup的select“等高”。

2)然后到框架的尺寸检查器,点击编辑“等高到超视图”约束条件,设置乘数为0.7,并返回。

您会看到约束条件已从“平等高度…”改为“比例高度…”。