Rud*_*ger 33 iphone scroll objective-c uiscrollview uiview
在一篇文章中,在iPhone上制作长卷轴并非糟糕,Aza Raskin描述了一种替代滚动条控件,它更适合在非常长的页面上使用:
滚动条"保持一段时间"以激活它并不重要; 我很好,只需沿着iPhone屏幕的右边缘滑动即可抓住滚动条手柄.我的想法是,如果我在物理屏幕上向下拖动手柄3/4,我将在页面上向下移动3/4.
Dropbox iPhone应用程序(它很棒,顺便说一下!)就是这种滚动条适用于长PDF文档.通过拖动手柄上的任何位置来定期滚动; 拖动手柄会将视图移动到该位置.这似乎是"从头开始"实现的,因为我认为SDK不够灵活,无法自定义现有滚动条的行为.
但是,Dropbox使用本机文档查看器在iPhone上显示文档,因此他们以某种方式向其添加滚动条功能.看滚动条手柄?您可以拖动它以快速到达文档中的其他位置.
这个概念与索引栏在UITableView中的工作方式非常相似(即Contacts.app); 索引在表格的右侧显示为条形(例如,"a"到"z"),您可以触摸特定标签以跳转到目标部分.但是,在这种情况下,一个非常长的页面没有部分,它应该适用于通用滚动,而不是跳转到部分.
那么我该如何实现这种滚动方法呢?我正在寻找一般的想法和具体的实施细节.如果存在开源实现,我也很感兴趣(这似乎是一个通用的问题/解决方案).
总体思路:
我抓住了Dropbox应用程序(很棒)并且玩了一下.看起来pdf查看需要一些照片应用,因为它除了支持滚动条外,还有条件地在触摸上显示半透明的导航栏和工具栏.我很确定发生了什么,他们有一个自定义视图控制器拦截触摸和相应的反应.
一触即发:
scrollView.contentOffset =
CGPointMake(0, (scrubber.y / [UIScreen mainScreen].bounds.size.height) *
scrollView.contentSize.height)
.3)可能还有其他隐藏的魔法与PDF显示(我从未在可可触摸中做过)但有些东西告诉我这是他们的基本过程.
归档时间: |
|
查看次数: |
4384 次 |
最近记录: |