Dan*_*Ray 10 iphone cocoa-touch uiscrollview
查看iPhone或iPad上的App Store应用程序,特别是显示屏幕截图的应用程序详细信息屏幕上的内容.屏幕截图查看器会显示您正在查看的屏幕截图,以及下一个和上一个屏幕截图的边缘.我需要实现类似的东西.
我如何做到这一点对穷人来说是公平的:我构建了一个UIScrollView并启用了分页并布置了我的内容.我使框架的大小与内容页面相同,但小于屏幕.然后我禁用了clipToBounds
,所以ScrollView框架之外的任何东西仍然被绘制.现在我可以看到相邻页面的边缘,但它们在ScrollView之外,因此无法接收滚动触摸.App Store应用程序可让您触摸该事物的整个宽度,包括相邻页面的窥视边缘.
那他们怎么做到的呢?
Ben*_*ieb 19
您需要在滚动视图后面添加一个视图,该视图覆盖了您的页面可见的整个区域.该视图应该实现-hitTest:withEvent:.操作系统将调用此方法以确定将特定触摸事件路由到何处.您需要做的就是返回此支持视图中任何点的滚动视图:
- (UIView *) hitTest: (CGPoint) pt withEvent: (UIEvent *) event {
if (CGRectContainsPoint(self.bounds, pt)) return self.scrollView;
return [super hitTest: pt withEvent: event];
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3419 次 |
最近记录: |