• IOS AutoLayout 遍历修改约束


    self.cvv2View.hidden = YES;

            self.periodView.hidden = YES;

            

            [self.contentView.constraints enumerateObjectsUsingBlock:^(NSLayoutConstraint *constraint, NSUInteger idx, BOOL *stop)

             {

                 if ((constraint.firstItem ==self.periodView)&&(constraint.firstAttribute == NSLayoutAttributeTop))

                 {

                     constraint.constant = 0;

                 }

                else if ((constraint.firstItem ==self.cvv2View)&&(constraint.firstAttribute == NSLayoutAttributeTop))

                 {

                     constraint.constant = 0;

                 }

            }];

     

            

            [self.cvv2View.constraints enumerateObjectsUsingBlock:^(NSLayoutConstraint *constraint, NSUInteger idx, BOOL *stop)

             {

                 if ((constraint.firstItem ==self.cvv2View)&&(constraint.firstAttribute == NSLayoutAttributeHeight))

                 {

                     constraint.constant = 0;

                 }

            }];

            

            [self.periodView.constraints enumerateObjectsUsingBlock:^(NSLayoutConstraint *constraint, NSUInteger idx, BOOL *stop)

             {

                 if ((constraint.firstItem ==self.periodView)&&(constraint.firstAttribute == NSLayoutAttributeHeight))

                 {

                     constraint.constant = 0;

                 }

             }];

     

     

    1.并不是所有的时候都是  firstItem  跟 firstAttribute (比如trailing的时候)(firstItem.firstItemAttribute == secondItem.secondItemAttribute * multiplier + constant

    2.高度的时候自己遍历自己,top buttom trailing的时候是父亲遍历儿子(可以通过xib里面的autolayout分布来回忆)

    ///////

    删除某个约束

     

    -

    WS(ws)

        

        for( NSLayoutConstraint * con in self.progressBgView.constraints )

        {

            if ((con.firstItem == ws.progressBgView)&&(con.firstAttribute == NSLayoutAttributeHeight))

            {

                [ws.progressBgView removeConstraint:con];

            }

        }

  • 相关阅读:
    Centos 7 LVM xfs文件系统修复
    Feign报错'xx.FeignClientSpecification', defined in null, could not be registered.
    IDEA提示不区分大小写设置
    基于SpringBoot的多模块项目引入其他模块时@Autowired无法注入其他模块stereotype注解类对象的问题解决
    docker安装mysql
    [转]【收藏】用消息队列和消息应用状态表来消除分布式事务
    临时修改当前crontab编辑器
    golang处理 json中非法字符
    nsq里面WaitGroups两种实用的用法
    golang zlib 压缩,解压缩
  • 原文地址:https://www.cnblogs.com/rollrock/p/5390816.html
Copyright © 2020-2023  润新知