TKRubberIndicator页面指示控件

橡胶拉伸的动画手感,TKRubberIndicator 的页面指示控件做得挺有意思的。配合滑动页面,指示点那种软弹过渡,体验上真的蛮顺滑的,尤其适合 onboarding 引导页、轮播图底部指示之类的场景。

支持 Swift 4.0iOS 8+ 环境,基本不用担心兼容问题。你可以通过 CocoaPodsCarthage 来集成,也可以直接拖 TKRubberPageControl.swift 文件进项目,方式比较灵活。

使用上也挺,初始化控件后,只要设置下页数和当前页数,用 addTarget 或闭包监听事件就行了。比如你在 scrollViewDidScroll 里更新一下当前页数,配合动画就丝滑:

rubberPageControl.numberOfPages = 5
rubberPageControl.currentPage = currentIndex
rubberPageControl.addTarget(self, action: #selector(pageChanged), for: .valueChanged)

另外作者开源在 GitHub 上,项目地址是 tbxark/TKRubberIndicator,源码不复杂,看起来也清晰。想自定义颜色、尺寸这些,直接改属性就能搞定,挺适合想快速上手做动效的你。

如果你在做类似的轮播图、引导页,想要点“弹弹的”动画效果,不妨试试这个。动画流畅、集成方便,交互上加分不少。

zip
TKRubberIndicator-master.zip 预估大小:62个文件
folder
TKRubberIndicator-master 文件夹
file
.gitignore 1KB
folder
Example 文件夹
folder
TKRubberPageControl 文件夹
file
ViewController.swift 1KB
file
Info.plist 1KB
folder
Images.xcassets 文件夹
folder
AppIcon.appiconset 文件夹
file
Contents.json 849B
folder
Base.lproj 文件夹
file
LaunchScreen.xib 4KB
file
Main.storyboard 4KB
file
AppDelegate.swift 2KB
folder
Pods 文件夹
file
Manifest.lock 306B
folder
Local Podspecs 文件夹
file
TKRubberPageControl.podspec.json 508B
folder
Pods.xcodeproj 文件夹
folder
xcshareddata 文件夹
folder
xcschemes 文件夹
file
TKRubberPageControl.xcscheme 3KB
folder
project.xcworkspace 文件夹
file
contents.xcworkspacedata 83B
folder
xcuserdata 文件夹
folder
Tbxark.xcuserdatad 文件夹
file
WorkspaceSettings.xcsettings 255B
file
UserInterfaceState.xcuserstate 14KB
file
project.pbxproj 36KB
folder
xcuserdata 文件夹
folder
Tbxark.xcuserdatad 文件夹
folder
xcschemes 文件夹
file
Pods-TKRubberPageControl_Tests.xcscheme 3KB
file
Pods-TKRubberPageControl_Example.xcscheme 3KB
file
xcschememanagement.plist 748B
folder
Target Support Files 文件夹
folder
TKRubberPageControl 文件夹
file
TKRubberPageControl.xcconfig 548B
file
TKRubberPageControl-prefix.pch 195B
file
Info.plist 828B
file
TKRubberPageControl.modulemap 128B
file
TKRubberPageControl-umbrella.h 330B
file
TKRubberPageControl-dummy.m 142B
folder
Pods-TKRubberPageControl_Example 文件夹
file
Pods-TKRubberPageControl_Example-acknowledgements.markdown 1KB
file
Pods-TKRubberPageControl_Example.debug.xcconfig 714B
file
Pods-TKRubberPageControl_Example.modulemap 154B
file
Pods-TKRubberPageControl_Example-resources.sh 5KB
file
Pods-TKRubberPageControl_Example.release.xcconfig 714B
file
Info.plist 828B
file
Pods-TKRubberPageControl_Example-umbrella.h 356B
file
Pods-TKRubberPageControl_Example-frameworks.sh 7KB
file
Pods-TKRubberPageControl_Example-dummy.m 168B
file
Pods-TKRubberPageControl_Example-acknowledgements.plist 2KB
folder
Pods-TKRubberPageControl_Tests 文件夹
file
Pods-TKRubberPageControl_Tests.release.xcconfig 558B
file
Pods-TKRubberPageControl_Tests-acknowledgements.plist 805B
file
Pods-TKRubberPageControl_Tests-resources.sh 5KB
file
Info.plist 828B
file
Pods-TKRubberPageControl_Tests.modulemap 150B
file
Pods-TKRubberPageControl_Tests.debug.xcconfig 558B
file
Pods-TKRubberPageControl_Tests-acknowledgements.markdown 133B
file
Pods-TKRubberPageControl_Tests-umbrella.h 352B
file
Pods-TKRubberPageControl_Tests-dummy.m 164B
file
Pods-TKRubberPageControl_Tests-frameworks.sh 6KB
folder
TKRubberPageControl.xcodeproj 文件夹
folder
project.xcworkspace 文件夹
file
contents.xcworkspacedata 164B
folder
xcuserdata 文件夹
folder
Tbxark.xcuserdatad 文件夹
file
UserInterfaceState.xcuserstate 10KB
file
project.pbxproj 26KB
folder
TKRubberPageControl.xcworkspace 文件夹
folder
xcshareddata 文件夹
file
IDEWorkspaceChecks.plist 238B
file
contents.xcworkspacedata 237B
folder
xcuserdata 文件夹
folder
Tbxark.xcuserdatad 文件夹
file
UserInterfaceState.xcuserstate 39KB
file
demo.gif 419KB
folder
Tests 文件夹
file
Tests.swift 769B
file
Info.plist 733B
file
Podfile.lock 306B
file
Podfile 185B
folder
TKRubberPageControl 文件夹
folder
Classes 文件夹
file
TKRubberPageControl.swift 14KB
file
.travis.yml 141B
file
_Pods.xcodeproj 27B
file
LICENSE 1KB
file
.swift-version 4B
file
README.md 4KB
file
TKRubberPageControl.podspec 543B
file
.gitattributes 85B
...
zip 文件大小:506.86KB