Apple ZoomingPDFViewer 直到第一次缩放后才允许拖动
Posted
技术标签:
【中文标题】Apple ZoomingPDFViewer 直到第一次缩放后才允许拖动【英文标题】:Apple ZoomingPDFViewer won't allow dragging until after first zoom 【发布时间】:2011-02-23 22:51:52 【问题描述】:我正在使用此示例代码在我的 iPhone 应用中查看 PDF:
http://developer.apple.com/library/ios/#samplecode/ZoomingPDFViewer/Introduction/Intro.html#//apple_ref/doc/uid/DTS40010281-Intro-DontLinkElementID_2
但是,问题是我最初似乎无法让它被拖动。我最初可以捏和缩放,在我缩放一次之后,我可以很好地拖动视图。视图首次加载时我无法拖动。
有什么想法吗?
【问题讨论】:
【参考方案1】:我想我已经找到了一个解决方案,但为什么这不起作用是我无法理解的。如果您设置了 zoomScale 属性,它似乎会触发允许进行拖动和滚动所需的任何操作,即使您将该属性设置为 1,也不会执行任何操作。
我只是在 UIScrollView 的 initWithFrame: 方法中这样做了:
...
self.zoomScale = 1;
...
如果其他人知道任何更好或更正确的方法来做到这一点,或者对为什么会发生这种情况有解释,我想知道。
【讨论】:
【参考方案2】:在 PDFScrollView 的 initFrame 中将 uiscrollview 的 zoomScale 设置为 1(正如您上面建议的那样)不会使视图在加载时可滚动?您是否还进行了任何其他更改?
如果您能够弄清楚为什么会发生这种情况,请也告诉我...
【讨论】:
已经有一段时间了,所以我不确定是否有任何额外的变化,但我不这么认为。如果有帮助,将 zoomScale 属性设置为 1 是我在initWithFrame
方法中所做的最后一件事。【参考方案3】:
这是因为 pdf 是一个“功能”。一旦您超过 1.0 的缩放比例,则页面将始终位于屏幕的中心,您将无法拖动它。因此,当您缩小超过 1.0f 值时(在初始放大之后),它将不再允许您四处移动。
我认为layoutSubviews
方法是做什么的——虽然我不确定。它是至少保持内容居中的方法。
【讨论】:
【参考方案4】:在这个问题上卡了差不多一整天。在最右边的窗口中,点击最左边的按钮,如so
然后取消选中“使用自动布局”
【讨论】:
以上是关于Apple ZoomingPDFViewer 直到第一次缩放后才允许拖动的主要内容,如果未能解决你的问题,请参考以下文章
来自 CGContextDrawPDFPage <Error>: KSTFBB+Helvetica: FT_Load_Glyph failed: 错误 133 的 Apple 的“Zoom