为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

ITMISS 2019-04-13 08:36:47
比如我有一个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多少呢?又是相对什么而言得出的数值呢?理解不能求大神解答!
查看完整描述

2 回答

?
互换的青春

TA贡献1797条经验 获得超6个赞

如果用storyboard可以这样:
1.把imageview的顶部拖到与superview的bottom齐平。
2.改变AlignCenterY的Mutiplier,1改为4,即为superview的1/4处。
                            
查看完整回答
反对 回复 2019-04-13
  • 2 回答
  • 0 关注
  • 337 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号