【发布时间】:2011-02-23 22:51:52
【问题描述】:
我正在使用此示例代码在我的 iPhone 应用中查看 PDF:
但是,问题是我最初似乎无法让它被拖动。我最初可以捏和缩放,在我缩放一次之后,我可以很好地拖动视图。视图首次加载时我无法拖动。
有什么想法吗?
【问题讨论】:
标签: iphone objective-c uiscrollview
我正在使用此示例代码在我的 iPhone 应用中查看 PDF:
但是,问题是我最初似乎无法让它被拖动。我最初可以捏和缩放,在我缩放一次之后,我可以很好地拖动视图。视图首次加载时我无法拖动。
有什么想法吗?
【问题讨论】:
标签: iphone objective-c uiscrollview
我想我已经找到了一个解决方案,但为什么这不起作用是我无法理解的。如果您设置了 zoomScale 属性,它似乎会触发允许进行拖动和滚动所需的任何操作,即使您将该属性设置为 1,也不会执行任何操作。
我只是在 UIScrollView 的 initWithFrame: 方法中这样做了:
...
self.zoomScale = 1;
...
如果其他人知道任何更好或更正确的方法来做到这一点,或者对为什么会发生这种情况有解释,我想知道。
【讨论】:
在 PDFScrollView 的 initFrame 中将 uiscrollview 的 zoomScale 设置为 1(正如您上面建议的那样)不会使视图在加载时可滚动?您是否还进行了任何其他更改?
如果您能够弄清楚为什么会发生这种情况,请也告诉我...
【讨论】:
initWithFrame 方法中所做的最后一件事。
这是因为 pdf 是一个“功能”。一旦您超过 1.0 的缩放比例,则页面将始终位于屏幕的中心,您将无法拖动它。因此,当您缩小超过 1.0f 值时(在初始放大之后),它将不再允许您四处移动。
我认为layoutSubviews 方法是做什么的——虽然我不确定。它是至少保持内容居中的方法。
【讨论】:
在这个问题上卡了差不多一整天。在最右边的窗口中,点击最左边的按钮,如so
然后取消选中“使用自动布局”
【讨论】: