TagListView
Swift编写的一个简单且高度可定制的iOS标签列表视图。
支持Storyboard、自动布局和@IBDesignable。
用法
最方便的方式是使用Storyboard。将视图拖动到Storyboard中,并将类设置为TagListView
(如果您使用CocoaPods,还需要将模块设置为TagListView
)。然后您可以在右边的属性中进行调整,并实时预览,这要归功于@IBDesignable。
您可以向标签列表视图添加标签,或通过代码设置自定义字体和对齐方式。
tagListView.textFont = UIFont.systemFont(ofSize: 24)
tagListView.alignment = .center // possible values are [.leading, .trailing, .left, .center, .right]
tagListView.addTag("TagListView")
tagListView.addTags(["Add", "two", "tags"])
tagListView.insertTag("This should be the second tag", at: 1)
tagListView.setTitle("New Title", at: 6) // to replace the title a tag
tagListView.removeTag("meow") // all tags with title “meow” will be removed
tagListView.removeAllTags()
您可以通过实现TagListViewDelegate
来接收标签按下事件
// ...
{
// ...
tagListView.delegate = self
// ...
}
func tagPressed(title: String, tagView: TagView, sender: TagListView) {
print("Tag pressed: \(title), \(sender)")
}
您还可以通过操作由addTag(_:)
返回的TagView
对象来自定义特定标签或为它设置点击处理器。
let tagView = tagListView.addTag("blue")
tagView.tagBackgroundColor = UIColor.blueColor()
tagView.onTap = { tagView in
print("Don’t tap me!")
}
请注意,如果您更新了TagListView
的某个属性(例如tagBackgroundColor
),所有的内部TagView
都将被更新。
安装
pod 'TagListView', '~> 1.0'
github "ElaWorkshop/TagListView" ~> 1.0
或将TagListView文件夹拖入您的项目。
Swift旧版本?
目前,master
分支正在使用Swift 5。
对于Swift 4,请使用版本1.3.2或swift-4分支。对于Swift 3,使用版本1.2.0或swift-3分支。对于Swift 2,使用版本1.0.1或swift-2.3分支。对于Swift 1.2,使用版本0.2。
贡献
欢迎提交拉取请求!如果您想进行较大规模的改动,请首先创建一个 issue 通知我。
许可证
MIT