一个 SwiftUI 包,提供一个可重用的视图用于显示集合
AlphabetScrollBar
AlphabetScrollBar 是一个 SwiftUI 程序包,用于提供一个可重复使用的视图,以便以字母顺序排列的方式显示项目集合。它允许你将集合显示为一个列表或一个网格,其中部分标题代表字母索引。
特性
- 按字母顺序对集合中的项目进行分组。
- 以带有字母标题的列表或网格形式显示集合。
- 易于使用,并可使用你自己的单元格视图进行自定义。
要求
- Swift 5.3+
- iOS 15.0+
安装
你可以使用 Swift 包管理器将 AlphabetizedList 添加到你的项目。要添加它,请按照以下步骤操作:
- 在 Xcode 中,打开你的项目或工作区。
- 转到文件>Swift 包>添加包依赖项。
- 输入存储库 URL:
(https://github.com/Salubrejoe/AlphabetScrollBar.git)
。 - 点击下一步,然后选择要使用的版本规则。
- 点击完成。
用法
要在你的 SwiftUI 项目中使用 AlphabetizedList,请按照以下步骤操作:
- 导入程序包:
import SwiftUI
import AlphabetScrollBar
将你的模型类型与 Alphabetizable 协议一致:
struct Country: Alphabetizable {
var id: String { self.name }
let name: String
}
创建一个 AlphabetizedList 视图实例:
let countries: [Country] = [
// ... your collection of Country instances ...
]
var body: some View {
AlphabetizedList(
collectionDisplayMode: .asList, // or .asGrid
collection: countries,
sectionHeaderFont: .headline,
sectionHeaderForegroundColor: .primary,
resultAnchor: .top,
cell: { country in
// Customize your cell view here based on the 'Country' model.
Text(country.name)
}
)
}
许可
通过调整 sectionHeaderFont、sectionHeaderForegroundColor 和单元格视图自定义外观。 许可
该程序包在 MIT 许可下发布。有关更多信息,请参阅许可。
致谢
AlphabetizedList 包的灵感来自于需要一个易于使用的 SwiftUI 视图来显示按字母顺序排列的集合。
贡献
欢迎贡献!如果你有任何错误报告、功能请求或建议,请创建问题或提交拉取请求。