更新
- 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
platform :ios, '8.0'
use_frameworks!
pod "TTGSnackbar"
Carthage
github "zekunyan/TTGSnackbar"
简单的使用案例
只显示文字

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

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

let snackbar = TTGSnackbar.init(message: "Message", duration: .Forever, actionText: "Action")
{ (snackbar) -> Void in
NSLog("Click action!")
// Dismiss manually after 3 seconds
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(3 * Double(NSEC_PER_SEC))), dispatch_get_main_queue()) { () -> Void in
snackbar.dismiss()
}
}
snackbar.show()
显示文字和两个动作按钮

let snackbar: TTGSnackbar = TTGSnackbar.init(message: "Two actions !", duration: .Long)
// Action 1
snackbar.actionText = "Yes"
snackbar.actionTextColor = UIColor.greenColor()
snackbar.actionBlock = { (snackbar) in NSLog("Click Yes !") }
// Action 2
snackbar.secondActionText = "No"
snackbar.secondActionTextColor = UIColor.yellowColor()
snackbar.secondActionBlock = { (snackbar) in NSLog("Click No !") }
snackbar.show()
显示文字和图片ICON

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