问题标签 [masonry-ios-osx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1711 浏览

ios - 以编程方式(使用 SnapKit)构建 UI 时如何正确使用尺寸类?

我决定以编程方式创建我的 UI,而不是故事板,以避免合并冲突噩梦和其他一些事情。但是,我遇到了一些问题:

  1. 我将如何进行大小班?
  2. 我的viewDidLoad方法通常非常大,这会降低代码的可读性。有什么建议或最佳实践吗?
0 投票
1 回答
540 浏览

ios - 横向和纵向模式的自动布局不同的约束

我使用 Masonry 库来帮助以编程方式添加约束。很好,但现在我面临的问题是,在用户将设备从横向旋转到纵向后,我需要卸载并添加新的约束。我尝试了相当“残酷”的解决方案,它确实改变了约束,但是,在几分之一秒内,我可以看到“旧”约束。用户旋转设备后是否有简单的方法来添加/删除约束?这就是我尝试过的(它有效,但正如我上面描述的那样,我可以在几分之一秒内看到“旧”帧):

0 投票
1 回答
370 浏览

uiscrollview - UIScrollView Autolayout Masonry 子视图高度已更改

和砌体警告:

我在scrollview中创建了一个contentView,在contentView中创建了所有其他视图。但是collectionView和tableView的高度会改变,

所以结果出错了。我的问题是当子视图的高度发生变化时,我应该怎么做才能解决这个问题?谢谢。

编辑:

在此处输入图像描述

当 tableview 的数据源发生变化时,从 2 变为 3,但 tableview 的高度没有显示正确的高度。

0 投票
1 回答
265 浏览

ios - 我在自定义 TableViewCell 中有一个 UICollectionView,但我无法自动调整 CollectionView 的大小

我有一个UICollectionView在一个习惯UITableViewCell,只有UIImageViewUICollectionView。我SDWebImage用来加载图像。我想要的是在加载图像之后,UICollectionView它的 contentView( UITableViewCell) 都会更新自己的高度以显示所有图像。例如,如果我有三张图片UICollectionView,我希望collectionview's高度等于所有三张图片的高度总和。这是一些代码 TableView

UITableViewCell(里面的UICollectionView):

UICollectionViewCell:

我使用自动布局并使用砖石来管理它。但无论我尝试修复它,它只会显示 20pt 高度。

ps:如何使CollectionViewCell框架适合图像框架

0 投票
0 回答
39 浏览

ios - 使用砌体布局 9 点

我正在使用 Masonay 来布局 UI,如下所示: UI 要求

9个点的大小是一样的。并且9个点之间的差距是一样的。我的问题是如何使用 Masonay使第一列点左侧的边距等于最后一列点右侧的边距?我的代码打击不完整。谁能帮我这个?

0 投票
1 回答
1342 浏览

ios - 砌体示例 updateConstraints 与 remakeConstraints

当我使用砖石来布局我的视图时,我发现 updateConstraints 和 remakeConstraints 之间的行为非常不同

当我使用时updateConstraints,按钮会按预期增长,但是当我使用时remakeConstraints,按钮的框架仍然是“NSRect: {{127, 237}, {66, 30}}”

我想知道为什么?

0 投票
1 回答
340 浏览

ios - 调整超级视图的大小以使其大小等于其子视图的大小

我对 UIView 进行了子类化,并在其中创建了几个视图。我想在我的视图控制器的视图中创建该视图的一个实例,并且还有另一个自定义视图将放置在该视图下方。我不确定如何将第二个视图放在第一个视图下方。

当我调试帧时,我得到 {{0,0}, {0,0}}。我正在使用 Masonry 进行视图布局。我已经从这个线程尝试了几种解决方案

我创建了一个示例项目,其中包含我尝试过的实际代码。 https://github.com/anuj-rajput/ViewSample

在这个示例项目中,有 2 个子类UIViewPhoneVerificationTopView以及一个从这两个视图创建对象PhoneVerificationPhoneNumberView的视图控制器。我需要以完全垂直对齐的方式(下图)PhoneVerificationViewController对它们进行完美排序。PhoneNumberViewTopView

难道我做错了什么?有没有正确的方法来继承 UIView 然后在控制器中引用它?

这就是视图的样子

截屏

0 投票
1 回答
243 浏览

objective-c - 带有砌体的iOS AutoLayout,未能将子底部设置为父底部

我在屏幕上有一个红色的父视图,在其中有一个绿色的子视图。尝试将孩子定位到左下角时,下面的代码失败。

在此处输入图像描述

如何解决这个问题?

0 投票
2 回答
599 浏览

ios - 错误:原因:'-[UITextField mas_makeConstraints:]:无法识别的选择器

这段代码运行时出现错误: [ageInputTextFiled mas_makeConstraints:^(MASConstraintMaker *make){}]; 我搜索了几个与我类似的问题,大多数答案都说砌体没有成功链接到项目,但是我通过cocoapods加载砌体,编译是可以的。所以有人可以帮忙吗?谢谢

0 投票
1 回答
65 浏览

ios - 如何使用编程约束堆叠+居中两个文本视图?

我正在尝试实现一个硬编码布局,其中两个文本视图应该堆叠在一起并以父 UICollectionViewCell 为中心:

由于各种遗留/业务原因,我应该使用在 UICollectionViewCell 的子类中硬编码的约束来执行此操作。两个文本视图的长度可以不同,但​​应该在父视图中垂直居中,同时在另一个之上。

有没有一种简单的方法可以在约束中表达这一点?我对这种类型的布局系统有点陌生,所以任何帮助表示赞赏!

我正在使用的应用程序也使用 Masonry ( https://github.com/SnapKit/Masonry ) 库,如果这能让事情变得更容易的话。