- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用纯代码(不是 Storyboard或 xib)来设置所有 View 的大小,我不想使用硬代码来设置 frame,所以我使用 Masonry。
现在我有一个 ScrollView 和一组 View 作为 ScrollView 的 subview ,代码是这样的:
[self.scrollview addSubview:[self.imageviews objectAtIndex:0]];
[[self.imageviews objectAtIndex:0] mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.equalTo(self.scrollview);
make.top.equalTo(@0);
make.left.equalTo(@0);
}];
for (NSInteger i = 1; i < maxcnt ; i++) {
[self.scrollview addSubview:[self.imageviews objectAtIndex:i]];
UIImageView *previous = [self.imageviews objectAtIndex:i-1];
[[self.imageviews objectAtIndex:i] mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.equalTo(self.scrollview);
make.top.equalTo(@0);
make.left.equalTo(previous.mas_right);
}];
}
contentsize
的 ScrollView ?以下代码无法正常运行,因为在旋转事件中,
self.view.frame.size.width
改变。
self.scrollview.contentSize = CGSizeMake(self.imageviews.count * self.view.frame.size.width, self.view.frame.size.height);
contentsize
更新得很好。
最佳答案
你快到了。您所要做的就是在最后一个 ImageView 上设置一个正确的约束。通过这样做,您可以在 contentView 的左侧和右侧之间创建一个“连接”。这样 UIScrollView “知道” subview 需要多少空间并调整 contentSize
因此。
无需设置contentSize
一点也不。自动布局会为您处理此问题,并且在旋转设备时也可以使用。
我写了一个blog post关于这个不久前。它使用 SnapKit,但这基本上只是“Masonry with Swift”的另一个名称。语法几乎相同。它描述了一个垂直 ScrollView ,但这个想法在水平 ScrollView 上是相同的。
还有一件小事:
而不是这样做:
make.top.equalTo(self.scrollview.mas_top);
make.top.equalTo(self.scrollview);
关于ios 在 Masonry 中设置 uiscrollview 的 contentsize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34130922/
我有一个 UIViewController 和一个纵向的 iPad xib。当我的 iPad 处于横向并将该 View Controller 放入 UISplitViewController 的详细信
我在 UITableViewCell 中有一个 collectionView。 collectionView 的内容是动态的,因此它的高度也是动态的,tableView 单元格的高度取决于 colle
我正在制作一个启用了分页机制的简单 UICollectionView,一切正常。但是,当滚动到最后一页时,单元格的数量在屏幕上并不完全可见,最后一页包含前一页的一些单元格。 如何扩展 UICollec
我在 UIView 类中使用 UIBezierpath 绘制对话气泡。在 View 类中包含UITextView。我正在使用以下代码来绘制对话气泡。 //BezierPathView.h @inter
我正在开发一个带有甘特图的小型 iPad 应用程序,它将显示过去 25 小时内的事件。我有 5 个缩放级别,每个级别分别为 1 小时、30 分钟、15 分钟、5 分钟和 1 分钟。我的单元格宽度为 3
我需要动态地将文本字段添加到 ScrollView 。我能够做到这一点,添加后我每次都会计算并更新 ScrollView 的内容大小。 更新内容大小后,我可以在屏幕上查看它,一旦编辑文本字段(键盘消失
是否可以使用动画更改 UIScrollView 的 contentSize ,以便大小在特定时间段内减小/增大,例如 UIView.animateWithDuration(0.3, animation
我们面临一个问题,即当弹出窗口内使用 UIActionSheet 样式的alertController 时,弹出窗口大小会发生变化。这是在我们升级代码库 iOS13 后发生的 示例代码:https:/
收到此错误 2017-07-28 20:17:34.636 App[78013:1799389] *** Terminating app due to uncaught exception 'NSIn
我正在将我的应用程序从 Obj-C 转换为 Swift。 我有 UICollectionViewLayout 的子类,它覆盖了已重命名为“prepare”的“prepareForLayout”。到目前
我有 UITableView 和 UITableViewCell,其中包含 UICollectionView,如下: UITableViewCell UITableViewCell UICollect
我在 View 中有一个 UITextField 和一个 UITextView。 场景是这样的: textFieldShouldReturn:UITextField 的方法使 UITextView 成
我正在双击 UIScrollView 中缩放 UIImageView。在 Interface Builder 中设置后工作正常。我在这里看到的神奇之处在于,当我放大/缩小时,scrollView 的
我的 UIViewController 中有 4 个 UIViews,颜色分别为:黄色、绿色、灰色和蓝色。 我还给出了以下自动布局约束: 黄色 View :Top-8-superview, Leadi
我有一个只能水平滚动的 UIScrollView。 ScrollView 固定在屏幕底部。我已将自动布局约束设置为固定高度。我将 contentSize 设置为固定大小。 但是,当我运行该应用程序时,
我有一个 UITableView,它在 UITableView 第一次重新加载后添加了一些数据,但是我无法向下滚动到新数据,如果我滚动我看到了新数据,但它会自动向后滚动,是的,我重新加载了我的 UIT
所以我的 scrollView 的 contentSize 最初等于我的图像的框架,但似乎我缩放得越多,contentSize 就越大。因此,当 scrollView 放大时,它周围有一个巨大的间隙。
为什么 UIScrollView 实例会在委托(delegate) scrollViewDidEndZooming:(UIScrollView *) aScrollView withView:(UIV
我对 UIScrollView 中的 contentSize 属性有点困惑。我的 scrollView 中有一张图像,我正在缩放和平移。我一直在为 contentSize 设置不同的值,但在我看来,输
在我的 View 中,我创建了一个宽度为 320、高度为 70 的 ScrollView 。 响应用户触摸按钮,我展开 ScrollView ,因此它的大小为 380(h) x 320(w)。 代码如
我是一名优秀的程序员,十分优秀!