本文介绍: 拖动当前 Run Script Phase 到 Check pods Manifest.lock 和 Compile Sources 之间。拖动当前 Run Script Phase 到 Check pods Manifest.lock 和 Compile Sources 之间。在Xcode 中 新建一个 R.generated.swift 文件 位置在 项目根目录 即 当前项目文件夹下。在项目根目录下创建 swiftgen.ym 文件。在项目根目录下创建 swiftgen.ym 文件。
R.swift 和 SwiftGen 资源转换使用指南
R.swift (原始代码会打包到项目?)
-
Pod
platform :ios, '12.0' target 'LBtest' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! pod 'R.swift' # pod 'SwiftGen', '~> 6.0' end
-
pod install
-
设置 执行脚本 TARGETS–>Build Phases–>New Run Script Phase
-
添加如下 code
if [ -f "${PODS_ROOT}/R.swift/rswift" ]; then "${PODS_ROOT}/R.swift/rswift" generate "${SRCROOT}/R.generated.swift" else echo "warning: R.swift not found, run 'pod install' to install R.swift."
-
拖动当前 Run Script Phase 到 Check pods Manifest.lock 和 Compile Sources 之间
-
在Xcode 中 新建一个 R.generated.swift 文件 位置在 项目根目录 即 当前项目文件夹下
-
使用事例
Localizable.string
"name" = "姓名"; "age" = "18";
let name = R.string.localizable.name() debugPrint(name) let age = R.string.localizable.age() debugPrint(age)
SwiftGen (原始代码不会打包到项目)
-
Pod
platform :ios, '12.0' target 'LBtest' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! #pod 'R.swift' pod 'SwiftGen', '~> 6.0' end
-
pod install
-
设置 执行脚本 TARGETS–>Build Phases–>New Run Script Phase
-
添加如下 code
[[ -f "${PODS_ROOT}/SwiftGen/bin/swiftgen" ]]; then ${PODS_ROOT}/SwiftGen/bin/swiftgen config run else "warning: SwiftGen is not installed. Run 'pod install --repo-update' to install it." fi
-
拖动当前 Run Script Phase 到 Check pods Manifest.lock 和 Compile Sources 之间
-
在项目根目录下创建 swiftgen.ym 文件
input_dir: LBtest output_dir: . strings: inputs: en.lproj filter: .+.strings$ outputs: - templateName: structured-swift5 output: Localizable.swift params: enumName: bslocalizable #xcassets: # - inputs: Logos.xcassets # outputs: # - templateName: swift5 # output: Logos-Constants.swift # params: # enumName: Logos # - inputs: # - Colors.xcassets # - Images.xcassets # outputs: # - templatePath: Resources/my-assets-custom-template.stencil # output: Assets-Constants.swift
-
将Localizable.swift 添加到 Xcode 项目
-
使用事例:
Localizable.string
"name" = "姓名"; "age" = "18";
let name = bslocalizable.name debugPrint(name) let age = bslocalizable.age debugPrint(age)
-
Homebrew
$ brew install swiftgen
在项目根目录下创建 swiftgen.ym 文件
input_dir: LBtest output_dir: . strings: inputs: en.lproj filter: .+.strings$ outputs: - templateName: structured-swift5 output: Localizable.swift params: enumName: bslocalizable #xcassets: # - inputs: Logos.xcassets # outputs: # - templateName: swift5 # output: Logos-Constants.swift # params: # enumName: Logos # - inputs: # - Colors.xcassets # - Images.xcassets # outputs: # - templatePath: Resources/my-assets-custom-template.stencil # output: Assets-Constants.swift
-
进入当前根文件夹下 打开终端执行run
swiftgen config run
原文地址:https://blog.csdn.net/Sico2Sico/article/details/135704766
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_58768.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。