当 iOS PDFView 添加到 UIView 时,PDFView 的页面区域会添加一个类似阴影的边框。有没有办法消除阴影?
我知道一些复杂的方法可以做到这一点:将边界扩展到屏幕外,覆盖一个白色的 UIView 以隐藏阴影,或者修改私有(private) PDFPageView(到剪辑到边界)。我特别不希望此处的边界超出屏幕范围,并且不希望与其他 hack 混淆。
最佳答案
更新:Apple 回应我的 Radar,新属性 PDFView.pageShadowsEnabled 已添加到 iOS 12 beta 3。现在这是隐藏阴影的正确方法。万岁!
以下是 iOS 12 之前的信息:
我向 Apple(WWDC 2018 实验室)确认没有官方的方法来隐藏阴影。我被告知有一种仅限内部的方法可以执行此操作,并要求我提交一份 Radar 以公开该方法。雷达 # 40847614 如果有人想欺骗。
与此同时,我正在深入研究 View 层次结构,并将所有内容裁剪到边界。我不喜欢它,但它似乎有效。阴影在旋转时返回,所以我在 viewWillAppear 和 viewWillTransitionToSize 中都调用了它。
-(void)removeShadowFromPDFView:(UIView *)view {
//Deep-dive into pdfView and set all views to clipsToBounds = YES
view.clipsToBounds = YES;
if ([view subviews].count == 0) {
//No subviews to examine
return;
}
for (UIView *subview in view.subviews) {
view.clipsToBounds = YES;
[self removeShadowFromView:subview];
}
}
关于ios - 如何消除 PDFView "page shadow"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50434909/