最近项目里需要显示PDF,用QLPreviewController实现时,发现QLPreviewController无法滚动。
最后检查发现是因为在window的最上面有一个view,作为水印层,
只要水印层不是完全透明的,就会导致QLPreviewController无法滚动。
虽然作了如下设置
watermarkView.userInteractionEnabled = NO;
水印层对scrollview,webview等的滚动都没有影响,
但就是会导致QLPreviewController无法滚动。
通过Xcode中的hierarchical view检查发现QLPreviewController内部是一个RemoteViewcontroller,
其实质是一个单独的进程嵌入到当前界面中的,可能其事件处理的方式比较特殊。