请问在写autolayout 约束时候怎么优雅的完成控件顶部距离为父视图高度的等比?

比如我有一个imageView加在自身的view上。
想让imageView距离顶部的距离为view高度的1/4应该怎么写?
我自己写的:
[self.viewaddConstraint:[NSLayoutConstraintconstraintWithItem:self.imageViewattribute:NSLayoutAttributeToprelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeHeightmultiplier:0.25constant:0]];
我理解的imageView.top=self.view.height*0.25+0的逻辑感觉没什么问题,但是运行报错。。求解答。
'NSInvalidArgumentException',reason:'***+[NSLayoutConstraintconstraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant:]:Invalidpairingoflayoutattributes'
然后我在stackoverflow上找到答案是向下面这么写:
[self.viewaddConstraint:[NSLayoutConstraintconstraintWithItem:self.imageViewattribute:NSLayoutAttributeToprelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeBottommultiplier:0.25constant:0]];
运行成功。但我不能理解
imageView.top=self.view.bottom*0.25+0
这里self.view.bottom是多少?view是self.veiw父视图了~
他的bottom多少呢?又是相对什么而言得出的数值呢?理解不能求大神解答!
ITMISS
浏览 338回答 2
2回答

互换的青春

如果用storyboard可以这样:1.把imageview的顶部拖到与superview的bottom齐平。2.改变AlignCenterY的Mutiplier,1改为4,即为superview的1/4处。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript