Swift写的库-TTGSnackbar

更新

  • 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

Screenshot

Gif

Screenshot

安装

需要Swift3, Xcode8, iOS 8+

CocoaPods

1
2
3
4
platform :ios, '8.0'
use_frameworks!

pod "TTGSnackbar"

Carthage

1
github "zekunyan/TTGSnackbar"

简单的使用案例

只显示文字

Example

1
2
let snackbar = TTGSnackbar.init(message: "Message", duration: .Short)
snackbar.show()

显示文字和一个动作按钮

Example

1
2
3
4
5
let snackbar = TTGSnackbar.init(message: "Message", duration: .Middle, actionText: "Action")
{ (snackbar) -> Void in
NSLog("Click action!")
}
snackbar.show()

显示文字和一个耗时操作按钮

Example

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!")
// 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()

显示文字和两个动作按钮

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
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

Example

1
2
3
4
5
6
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周岁前一天-_-|||)

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器