[iOS 问题求助]关于 Masonry 布局的问题

发布于 09-04 10:56 字数 512 浏览 24 评论 0

我一个自定义的 Cell ,布局如下:

图片设置大小、距离顶部、距离左边、距离底部

标题的左边距离图片的右边、距离顶部、距离右边

来源的左边距离图片的右边、顶部距离标题的底部、距离底部、距离右边

这样设置是没问题,正常的。

但是现在我想自定义一条分隔线,草图如下:

我该如何修改?我尝试了很多次都失败了。。

Xcode 控制台狂飙 log

PS: 用了 UITableView-FDTemplateLayoutCell 来动态计算高度

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

夏花。依旧2022-09-11 10:56:08

来源的底部约束改为与分割线top的垂直距离,分割线添加左、右、高与底部约束。

大姐,你呐2022-09-11 10:56:08

问题已解决,本人对约束和 Masonry 还是不熟,还得多练练

差↓一点笑了2022-09-11 10:56:08

试试这样看看:

[imgv mas_makeConstraints:^(MASConstraintMaker *make) {
    make.width.equalTo(@40);
    make.height.equalTo(@40);
    make.top.equalTo(@20);
    make.left.equalTo(@20);
}]; 
[lbTitle mas_makeConstraints:^(MASConstraintMaker *make) {
    make.left.equalTo(imgv.mas_right).offset(10.0f);
    make.top.equalTo(imgv.mas_top);
    make.right.equalTo(@-20);
    make.height.equalTo(@20);
}];
[lbSource mas_makeConstraints:^(MASConstraintMaker *make) {
    make.left.equalTo(lbTitle.mas_left);
    make.top.equalTo(lbTitle.mas_bottom).offset(10.0f);    // 或  make.bottom.equalTo(imgv.mas_bottom);
    make.height.equalTo(@20);
}];
[vLine mas_makeConstraints:^(MASConstraintMaker *make) {
    make.bottom.equalTo(vLine.superview.mas_bottom);
    make.height.equalTo(@1);
    make.left.right.equalTo(@20);
}];

里面的数值自己估摸一下,应该没什么大问题。

补充一下: imgv:图片 lbTitle:标题 lbSource:标题下方的label vLine:下划线

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文