为第5章创建的Hypnosister应用添加捏合-缩放功能。
首先需要为UIScrollView对象设置委托:
•BNRAppDelegate需要遵守UIScrollViewDelegate协议。
•在application:didFinishLaunchingWithOptions:方法中,将BNRAppDelegate对象自身设置为UIScrollView对象的委托。
为了实现UIScrollView对象的委托方法,需要为BNRAppDelegate添加一个属性,指向BNRHypnosisView对象。请读者在BNRAppDelegate.m的类扩展中添加一个BNRHypnosisView属性,然后修改其余代码,将BNRHypnosisView实例变量改为属性。
接下来需要设置UIScrollView对象:将BNRHypnosisView对象作为子视图添加到该对象中;将其pagingEnabled属性设置为NO;设置contentSize属性(决定缩放区域大小)。还可以根据需要设置其他属性,请读者在UIScrollView的类参考手册中查找感兴趣的属性。
最后,实现UIScrollView对象的委托方法viewForZoomingInScrollView:,返回BNRHypnosisView对象。
如果读者遇到了问题,可以在UIScrollView的类参考手册中查找相关信息,还可以查看UIScrollViewDelegate协议中的各个委托方法说明。
提示:在模拟器中,为了模拟双指捏合手势,可以在按住Option键的同时拖曳鼠标。