iOS仿京东菜单交互实现
侧边滑出的京东菜单的手势交互体验挺丝滑的,尤其在移动端,能带来不错的用户沉浸感。在 iOS 里做这个,其实不难,只要你对UIViewController的嵌套、手势识别和动画稍微熟点手。先整一个主控制器当容器,里面装个可滑动的菜单视图,像是UIScrollView
或者你自己写的UIView子类都行。
菜单的内容怎么做?按钮啊图标啊都可以整点,像UIButton
加个图标和文字,再给选中态加点反馈,整体看着就比较有质感。就是核心了 —— 手势识别。UIPanGestureRecognizer登场,从屏幕边缘滑起就触发动画,用UIView.animate(withDuration:animations:)
控制菜单的 frame 或者 transform,视觉过渡平滑。
收起菜单也要考虑下,比如点到空白区域就关闭,或者滑不动了也自动收回。这个逻辑在主控制器里管就行,监听一下状态,加点点击事件判断就够了。调试方便的话,可以引入CocoaLumberjack,这个日志框架挺灵活,想输出啥、输出到哪都能自定义,调代码的时候省心不少。
如果你想看看安卓侧滑菜单的思路,也可以瞅瞅下面这些资源,虽然平台不同,但设计思路是互通的。比如AndroidResideMenu这种就做得挺有意思的。如果你正好在做 iOS 菜单功能,动手试试这些技巧,说不定就灵感爆棚了~
11.36MB
文件大小:
评论区