我正在为 iPad 制作一个绘图应用程序,用户可以使用一根手指来绘制线条和矩形。但是,我正在努力添加缩放功能。
我当前代码的一些背景信息:
- 有一个应用程序委托(delegate)来设置 View Controller
- 大部分操作发生在 View Controller 内,包括 IBAction、弹出窗口等。
- xib 文件使用我制作的自定义 View ,这是所有绘图操作发生的地方
这是我到目前为止所做的: 在 viewDidLoad 里面,我有
[scrollView setContentSize:CGSizeMake(768, 1024)];
[scrollView setMinimumZoomScale:0.5];
[scrollView setMaximumZoomScale:5];
[scrollView setDelegate:self];
在我的 xib 文件中,我尝试将 UIScrollView 扔到我的自定义 View 之上(并进行 IB 连接),但是当然,它覆盖了我的自定义 View ,并且您无法绘制。我尝试了相反的方法,先放置一个 UIScrollView,然后放置我自己的自定义 View ,但我仍然无法绘制。
有什么建议吗?
最佳答案
将其添加到 .h 文件中的 viewController 中:
<UIScrollViewDelegate>
然后在您的 .m 文件中:
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
return backgroundImage;
}
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale {
NSLog(@"scrollViewDidEndZooming");
}
此外,请确保在您的 xib 中, ScrollView 的委托(delegate)已链接到文件的所有者。
编辑1:
关于iphone - 如何缩放 iOS 绘图应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6810666/