如何保持 UIscrollview 框架固定但动态范围

Posted

技术标签:

【中文标题】如何保持 UIscrollview 框架固定但动态范围【英文标题】:How to keep UIscrollview frame fixed but dynamics bounds 【发布时间】:2015-01-19 10:01:24 【问题描述】:

我想创建如下截图所示的图像蒙版。

我把 UIImageView 放在 UIScrollView 中。并设置滚动视图框架匹配中心的白色方块。

在滚动视图委托中,我更改了滚动视图边界。然后我们可以看到照片超出了白色边框。

- (void)scrollViewDidZoom:(UIScrollView *)scrollView 
    self.imgScrollView.bounds = self.imageView.frame;

放大后,从日志中我可以看到滚动视图框架也发生了变化。

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView
                       withView:(UIView *)view
                        atScale:(CGFloat)scale 

    NSLog(@"= = = = = = = = = = =");
    [self logName:@"IMAGEVIEW" ofView:self.imageView];
    [self logName:@"SCROLLVIEW" ofView:self.imgScrollView];

如果我在委托处将框架设置回白色方块,边界也会被设置回来!然后不会绘制白色边框之外的图像。

如果有什么方法可以做到这一点?

【问题讨论】:

【参考方案1】:

无需更改界限。只需设置scrollview clipsToBounds = NO。

【讨论】:

以上是关于如何保持 UIscrollview 框架固定但动态范围的主要内容,如果未能解决你的问题,请参考以下文章

UIView 固定到屏幕边缘,但框架保持 0,0

UIScrollView 内容大小固定为 600x600(Main.storyboard 大小)

UIScrollView ContentView动态高度约束

尽管内容大小正确,但 UIScrollview 不会滚动; textview 子视图框架也表现得很奇怪

将动态高度设置为 UIScrollView Swift

如何实现具有固定宽度和动态高度的 Next.js Image 组件以保持图像的尺寸?