• iOS autolayout 代码,自定义间距


    最近换了新的项目组,然后这个项目组是纯代码,然后我就开始试着用代码去写适配,结果学艺不精,遇到个闪退,搜了一下发现几乎没有人遇到这个问题,后来发现其实就是我自己太粗心了。

    我是这样写的

    NSArray *constraints2=[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-hPadding-[_productNewLabel(==13)]" options:0 metrics:nil views:@{@"_productNewLabel":_productNewLabel,@"hPadding":@(hPadding)}];

    报错信息是这样的

    Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to parse constraint format: It's not possible to set a space equal to the width or height of a view. Perhaps you want to use a view as a spacer?

    其实报错信息说的很明白,就是我写了一个动态的间距hpadding,然后他没识别;

    看到这很多大神应该都明白了,因为我把hpaddingKeyValue加错地方了

    我加在了Views里面,其实应该加在metrics就对啦,还是stackoverflow比较强大呀。最后在里面搜到的答案

    NSArray *constraints2=[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-hPadding-[_productNewLabel(==13)]" options:0 metrics:@{@"hPadding":@(hPadding)} views:@{@"_productNewLabel":_productNewLabel}];

    以上就对啦。

  • 相关阅读:
    Azure DevOps 中 Dapr项目自动部署流程实践
    使用基于Roslyn的编译时AOP框架来解决.NET项目的代码复用问题
    使用Dapper读取Oracle多个结果集
    .NET(C#) Dapper Oracle(ODP.NET)或SQL Server 执行多条查询(select)语句的方法代码
    C#实现Xml序列化与反序列化的方法
    在.NET 6.0中发布单个Exe文件(PublishSingleFile)
    ADC平台与低代码开发
    Wandb:模型训练最强辅助
    mac 多屏快速切换鼠标 CatchMouse(mac多屏切换鼠标)
    go的stream
  • 原文地址:https://www.cnblogs.com/waiwaibuzhidao/p/6093587.html
Copyright © 2020-2023  润新知