CountryPicker 是一个自定义 UIPickerView 子类,提供了一项 iOS 控件,让用户可以从列表中选择国家。它可以选择性地在每个国家名称旁边显示国旗,并且该库包含了一组来自 https://github.com/koppi/iso-country-flags-svg-collection 的 249 张公有领域国旗图片,已重命名以配合该库使用。
请注意,国家列表基于 ISO 3166 国家代码标准 (http://en.wikipedia.org/wiki/ISO_3166-1)。此列表排除了一些较小的国家,将它们视为更大的国家的一部分。例如,英格兰、苏格兰、威尔士和北爱尔兰被合并为 大不列颠。对于大多数用途来说,这是可以接受的,因为它与用于地区的约定相同,但如果您需要指定额外的国家,您可以根据下文“子类化”部分中所述修改大小写列表。
备注: "支持" 意味着库已测试与该版本兼容。"兼容" 意味着该库应在该 iOS 版本上运行(即它不依赖于任何不可用的 SDK 特性),但我们不再对该兼容性进行测试,并且可能需要调整或修复错误才能正确运行。
从版本 1.1 开始,CountryPicker 需要 ARC。如果您希望在非 ARC 项目中使用 CountryPicker,只需将 -fobjc-arc 编译器标志添加到 CountryPicker.m 文件中。为此,请进入目标设置中的构建阶段选项卡,打开编译来源组,在列表中双击 CountryPicker.m 并在弹出窗口中输入 -fobjc-arc。
如果您想要将整个项目转换为 ARC,请注释掉 CountryPicker.m 中的 #error 行,然后运行 Xcode 中的编辑 > 重构 > 转换为 Objective-C ARC... 工具,并确保所有要使用 ARC 的文件都已选中(包括 CountryPicker.m)。
要在一个应用程序中使用 CountryPicker,请只需将 CountryPicker 类文件拖入到您的项目。如果您要使用旗帜图标,也可以拖入 CountryPicker.bundle 文件夹。
或者,您可以使用 Cocoapods 或 Carthage 安装 CountryPicker,
自版本 1.0.2 以来,您可以通过子类化 CountryPicker 轻松修改国家名称/代码列表。
要添加额外国家,覆盖+countryNamesByCode方法(无需覆盖+countryCodesByName,因为此方法自动从+countryNamesByCode派生)。
要更改显示顺序或将(例如)US或UK复制显示在列表顶部,覆盖+countryNames方法(无需覆盖+countryCodes,因为此方法自动从+countryNames和+countryCodesByName派生)。
版本1.3
版本1.2.3
版本1.2.2
版本1.2.1
版本1.2
版本1.1
版本1.0.2
版本1.0.1
版本1.0