ios - UIScrollView 中的 drawRect 方法

标签 ios uiscrollview drawrect uibezierpath

我在 UIScrollView 中有一个自定义的 UIView,大小相同。我正在 UIViewdrawRect 方法中绘制 UIBezierPath。但是当缩放在 UIScrollView 中改变时,drawRect 方法总是得到相同的矩形。所以 UIBezierPath 的分辨率没有刷新。 有什么建议吗?

最佳答案

实现此 ScrollView 委托(delegate)方法以调整可缩放 View 的 contentScaleFactor(您称之为“分辨率”):

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView
                       withView:(UIView *)view
                        atScale:(float)scale {
    view.contentScaleFactor = scale * [UIScreen mainScreen].scale;
}

可能还必须告诉 View 它需要重绘,但先尝试一下,看看会发生什么。

关于ios - UIScrollView 中的 drawRect 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34981267/

相关文章:

iphone - 不会是 SourceTypeAvailable :UIImagePickerControllerSourceTypeSavedPhotosAlbum always return YES?

iphone - 在 layoutSubviews 中调用 setNeedsDisplay?

iOS 绘制带有底部边框的自定义 View

iOS:为什么 drawRect: 被调用了两次,为什么这个 ivar 值似乎无缘无故地改变了?

ios - 是否有在 iOS 应用程序中设置后备本地化语言的官方方法?

ios - 包含 NSString 数组的 JSON

ios - 成员(member)资格、wcf 身份验证服务、移动应用程序(iOS、Android)

iphone - UIScrollView覆盖UIButton

ios - 缩放 ScrollView 的特定区域

IOS:在 ScrollView 中添加 ImageView 以进行缩放