iOS标签选择器Swift版

iOS 的标签选择器一直是 UI 里比较常用的一块,用起来直观,还挺贴近用户习惯的。这个叫ios-标签选择 Swift.zip的小项目,虽然不算花哨,但功能上是够用了,适合快速集成或者拿来当个学习参考。

Swift 写的标签选择器,逻辑比较清楚。没走瀑布流那一套,而是用的UITableView,垂直滚动那种,代码量也不大。你只要会点UITableView的套路,比如dataSourcedelegate,上手就没啥压力。

标签数据用结构体装起来挺方便,像这样:

struct Tag {
  let text: String
  let value: Any?
}

一把丢进数组里,配合cellForRowAt展示出来就行:

let tags = [Tag(text: "标签 1", value: 1), Tag(text: "标签 2", value: 2)]
cell.textLabel?.text = tags[indexPath.row].text

交互逻辑也简单,点哪个就响应哪个:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
  let selectedTag = tags[indexPath.row]
  // 做点事,比如回调、选中高亮啥的
}

要是想美化下,也可以自己改下cell样式,加个颜色、圆角啥的,效果会好多。布局需求高一点的场景,比如多行标签,后续你也可以尝试换成UICollectionView,配合flowLayout搞定自适应。

项目里提到的oneByOne文件,估计是主控代码或者关键视图的实现,建议重点看下。整体来看,这项目挺适合想搞个简单标签交互的场景,功能上能用,结构上也利于扩展。

如果你项目里刚好有选项选择、筛选条件那类需求,可以直接拿来改一改;如果你在学 Swift UI 控件的使用,也蛮适合当练手素材。

zip 文件大小:57KB