更新
- 2016-12-25: 增加多行文本的支持,增加阴影
- 2016-10-20: 增加ContentInset,也就是Padding的属性;增加自定义内容View; 版本1.3.0
- 2016-10-17: 支持Swift3;增加的顶部Top位置动画;增加同时两个Action按钮;增加带图片icon显示
- 2016-03-25: 版本更新到了0.5.1,补充些说明、示例
TTGSnackbar
用Swift写了个简单的控件库:TTGSnackbar,模仿Android的Snackbar。目前更新到了版本1.3.0。支持多种动画,增强了自定义。
Github: https://github.com/zekunyan/TTGSnackbar

Gif

安装
需要Swift3, Xcode8, iOS 8+
CocoaPods
1 2 3 4
| platform :ios, '8.0' use_frameworks!
pod "TTGSnackbar"
|
Carthage
1
| github "zekunyan/TTGSnackbar"
|
简单的使用案例
只显示文字

1 2
| let snackbar = TTGSnackbar.init(message: "Message", duration: .Short) snackbar.show()
|
显示文字和一个动作按钮

1 2 3 4 5
| let snackbar = TTGSnackbar.init(message: "Message", duration: .Middle, actionText: "Action") { (snackbar) -> Void in NSLog("Click action!") } snackbar.show()
|
显示文字和一个耗时操作按钮

1 2 3 4 5 6 7 8 9
| let snackbar = TTGSnackbar.init(message: "Message", duration: .Forever, actionText: "Action") { (snackbar) -> Void in NSLog("Click action!") dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(3 * Double(NSEC_PER_SEC))), dispatch_get_main_queue()) { () -> Void in snackbar.dismiss() } } snackbar.show()
|
显示文字和两个动作按钮

1 2 3 4 5 6 7 8 9 10 11 12 13
| let snackbar: TTGSnackbar = TTGSnackbar.init(message: "Two actions !", duration: .Long)
snackbar.actionText = "Yes" snackbar.actionTextColor = UIColor.greenColor() snackbar.actionBlock = { (snackbar) in NSLog("Click Yes !") }
snackbar.secondActionText = "No" snackbar.secondActionTextColor = UIColor.yellowColor() snackbar.secondActionBlock = { (snackbar) in NSLog("Click No !") }
snackbar.show()
|
显示文字和图片ICON

1 2 3 4 5 6
| let snackbar: TTGSnackbar = TTGSnackbar.init(message: "Two actions !", duration: .Long)
snackbar.icon = UIImage.init(named: "emoji_cool_small")
snackbar.show()
|
自定义
可以自定义文字的字体、颜色,动作按钮的字体、颜色,回调等等,详细的请看Github的README说明。😊
总之
一时兴起写了个简单的库,后来发现居然有人提交PR、issue,不敢怠慢啊,也就坚持了下来,断断续续更新了10个小版本了=。=(2016年3月25号,25周岁前一天-_-|||)
上一篇:Swift开源项目: TTGEmojiRate的实现
下一篇:有趣的Autolayout示例2-Masonry实现