FlagsKit 是一个 Swift 包,包含 200 多个国家/地区的旗帜 png 图像。所有图像都是低分辨率的(大多数为 250 x 125),因此它们加起来的重量小于 750 KB。该软件包提供了一种非常简单的方法来获取包含您需要的旗帜的 SwiftUI 视图。 当您需要一个小的国旗图像时,可以使用它,如下例所示。

它还具有将电话区号或货币代码转换为国家/地区代码,并根据国家/地区、电话或货币代码获取 Emoji 旗帜的机制。

安装

它是一个 Swift Package,所以你需要做以下操作

使用

import FlagsKit 添加到您的 Swift 文件中。

国家/地区、货币、电话区号

通过使用 Country 枚举,您将能够从货币或电话区号获取国家/地区的国家/地区代码或 Emoji 旗帜。以下代码示例将打印 CZ 国家/地区代码

let countryCode = Country.countryCode(fromPhoneCode: "+420")
print(countryCode)

如果您需要从货币代码获取国家/地区代码,您可以这样做

let countryCode = Country.countryCode(fromCurrencyCode: "USD")
print(countryCode)

在这种情况下,将打印 US

Emoji 旗帜

要获取 Emoji 旗帜,您可以使用以下方法之一

Country.flagEmoji(forCountryCode: "US")     // -> 🇺🇸
Country.flagEmoji(forCurrencyCode: "USD")   // -> 🇺🇸
Country.flagEmoji(forPhoneCode: "+420")     // -> 🇨🇿

FlagView

如果您需要一个包含国家/地区旗帜的 SwiftUI 视图,请使用以下代码

FlagView(countryCode: "US")

如果您需要圆形旗帜或带有圆角的旗帜,请使用 style 参数

 FlagView(countryCode: "ro", style: .circle)
    .frame(width: 50, height: 50)

在此示例中,您将拥有一个 50 x 50 的圆形旗帜。