👆
PullToReach
PullToReach 是一个用于实现类似于 Soor(由 Tanmay 开发)音乐应用中的 pull-to-reach 功能的简单拖放解决方案。这允许手机屏幕较大的用户轻松地触及显示顶端的内容。
🏃♂ ️ 开始使用
开始使用非常简单,只需让您的 ViewController 遵循 PullToReach
协议,并通过调用 activatePullToReach
函数来激活功能。
class TeamMembersViewController: UITableViewController, PullToReach {
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.rightBarButtonItems = [
addBarButtonItem,
refreshBarButtonItem
]
self.activatePullToReach(on: navigationItem)
}
...
如果您的 ViewController 包含在 UINavigationController
中,您可以在所有 UIBarButtonItems
上激活 pull-to-reach。使用 pull-to-reach 选择项目将调用与常规 UIBarButtonItem
动作相同的操作,因此您无需做更多操作。
🖌 自定义样式
更改高亮颜色
如果您想更改高亮颜色,可以在激活 pull-to-reach 时指定。
self.activatePullToReach(on: navigationItem, highlightColor: .red)
完全自定义操作
通过覆盖 applyStyle
函数,您可以定义完全自定义的样式。所有状态之间的变化将默认进行动画处理。
class ScalingButton: UIButton {
override func applyStyle(isHighlighted: Bool, highlightColor: UIColor) {
let scale: CGFloat = isHighlighted ? 1.5 : 1.0
transform = CGAffineTransform(translationX: scale, y: scale)
}
}
🚴♂ ️ 在NavigationBar之外的使用
Pull-To-Reach 不仅可以为导航项激活,还可以为每一个独立的 UIControl
激活。这在您拥有带有自己控制器的非标准视图时非常有用。为了定义您的样式,您可以像上面那样覆盖 applyStyle
。
🛠 安装
CocoaPods
要将PullToReach集成到您的Xcode项目,使用CocoaPods,请将以下内容添加到您的Podfile
pod 'PullToReach'
要运行示例项目,先克隆仓库,然后从示例目录运行pod install
手动
如果您不想使用任何依赖管理器,您可以通过下载源代码并将文件放置在项目目录中来手动集成PullToReach。
👤 作者
此框架由
❤️ 贡献
如果您需要帮助,发现了一个错误,或想讨论功能请求,请发起一个问题。
如果您想对PullToReach进行更改,请发起一个PR。
📃 许可证
拉取到达到使用MIT许可证发布。有关更多信息,请参阅License.md