使用Masonry的时候进行updateConstraints没有效果
2016-08-11 17:24
375 查看
使用Masonry的时候,创建好了约束,但是想要进行一些位置变化时用以做些动画之类的简单效果而使用updateConstraints进行设置却发现没有效果。
原因就是使用updateConstraints更新的时候必须是makeConstraints里面设置过的约束。只是这样还不行,就比如
[xxx
makeConstraints:^(MASConstraintMaker *make) {
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_bottom).offset(-5);
}];
你想修改成
[xxx updateConstraints:^(MASConstraintMaker *make)
{
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_top).offset(5);
}];
虽然设置的make.bottom没错,但是约束对象不匹配也是不能成功,如果你能成功,那么,你就写两遍updateConstraints操作再试试。
以上方法约束改成
[xxx updateConstraints:^(MASConstraintMaker *make)
{
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_bottom).offset(5);
}];
就可以成功。
原因就是使用updateConstraints更新的时候必须是makeConstraints里面设置过的约束。只是这样还不行,就比如
[xxx
makeConstraints:^(MASConstraintMaker *make) {
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_bottom).offset(-5);
}];
你想修改成
[xxx updateConstraints:^(MASConstraintMaker *make)
{
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_top).offset(5);
}];
虽然设置的make.bottom没错,但是约束对象不匹配也是不能成功,如果你能成功,那么,你就写两遍updateConstraints操作再试试。
以上方法约束改成
[xxx updateConstraints:^(MASConstraintMaker *make)
{
make.left.right.equalTo(self.view);
make.bottom.equalTo(self.view.mas_bottom).offset(5);
}];
就可以成功。
相关文章推荐
- 在使用jquery时间控件的时候无论怎么设置readonly都没有效果,折腾了N久才知道了这个属性,希望可以为同样有过苦恼的童鞋有些帮助
- 修改用户信息的时候,使用Servlet对新的数据和数据库的数据进行对比,修改成功实现页面的弹窗和页面的跳转
- 父元素高度为auto,子元素使用top:-50%没有效果的问题
- 注意在使用ArrayList进行for循环遍历的时候不能直接移除下标
- centos7使用非root用户进行ssh免密登录,提示key没有在主机注册
- 使用脚本进行同行股票基本面对比效果
- ionic3添加android平台使用指定版本(解决没有升级Android Studio3.0的时候添加平台过高报错)
- 如何让Gridview在没有数据的时候显示表头[没有使用SqlDataSource控件时]
- 使用ViewPager,设置为wrap_content后没有效果,以及多个view高度不同时ViewPager高度自适应
- 在进行C#编程时候,有的时候我们需要判断一个字符串是否是数字字符串,我们可以通过以下两种方法来实现。 【方法一】:使用 try{} catch{} 语句。 我们可以在try语句块中试图
- [版本V2.0]当使用【横向菜单】样式的时候,点击菜单项没有反应问题
- 前端开发人员当后端没有给你接口的时候,如何进行功能测试?
- 在使用kvc进行赋值的时候,有时候会遇到null值,这个时候我们使用kvc会报错
- 分析器错误信息: 在应用程序级别以外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。导致该错误的原因可能是在 IIS 中没有将虚拟目录作为应用程序进行配置。
- iOS使用Masonry时进行动画操作方法
- minicom使用xmodem写协议上传文件时候没有反应
- 在用java进行极光推送的时候,需要的一个工具类: 使用的时候,直接调用 sendToRegistrationId 方法
- Android画布使用Region.Op.XOR没有效果的原因
- android 使用多个Intent 进行activity跳转 而没有finish的情况,如何直接退出系统
- android 使用LinearGradient进行字体渐变的效果