增加换肤功能
This commit is contained in:
56
TUIKit/TUIRoomKit/Source/Localized/TUIRoomKitLocalized.swift
Normal file
56
TUIKit/TUIRoomKit/Source/Localized/TUIRoomKitLocalized.swift
Normal file
@@ -0,0 +1,56 @@
|
||||
//
|
||||
// RoomKitLocalized.swift
|
||||
// TUIRoomKit
|
||||
//
|
||||
// Created by WesleyLei on 2022/9/13.
|
||||
// Copyright © 2022 Tencent. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
import TUICore
|
||||
|
||||
func localized(_ key: String) -> String {
|
||||
if let bundlePath = tuiRoomKitBundle().path(forResource: TUIGlobalization.tk_localizableLanguageKey() ?? "", ofType: "lproj"),
|
||||
let bundle = Bundle(path: bundlePath) {
|
||||
return bundle.localizedString(forKey: key, value: "", table: "TUIRoomKitLocalized")
|
||||
}
|
||||
return TUIRoomKitLocalized.sharedBundle.localizedString(forKey: key, value: "", table: "TUIRoomKitLocalized")
|
||||
}
|
||||
|
||||
func localizedReplace(_ origin: String, replace: String) -> String {
|
||||
return origin.replacingOccurrences(of: "xx", with: replace)
|
||||
}
|
||||
|
||||
func tuiRoomKitBundle() -> Bundle {
|
||||
return TUIRoomKitLocalized.sharedBundle
|
||||
}
|
||||
|
||||
private class TUIRoomKitLocalized {
|
||||
class var sharedBundle: Bundle {
|
||||
struct Static {
|
||||
static let bundle: Bundle? = tuiRoomKitBundle()
|
||||
}
|
||||
guard let bundle = Static.bundle else {
|
||||
return Bundle()
|
||||
}
|
||||
return bundle
|
||||
}
|
||||
}
|
||||
|
||||
private func tuiRoomKitBundle() -> Bundle? {
|
||||
var url: NSURL? = Bundle.main.url(forResource: "TUIRoomKitBundle", withExtension: "bundle") as NSURL?
|
||||
if let associateBundleURL = url {
|
||||
return Bundle(url: associateBundleURL as URL)
|
||||
}
|
||||
url = Bundle.main.url(forResource: "Frameworks", withExtension: nil) as NSURL?
|
||||
url = url?.appendingPathComponent("TUIRoomKit") as NSURL?
|
||||
url = url?.appendingPathComponent("framework") as NSURL?
|
||||
if let associateBundleURL = url {
|
||||
let bundle = Bundle(url: associateBundleURL as URL)
|
||||
url = bundle?.url(forResource: "TUIRoomKitBundle", withExtension: "bundle") as NSURL?
|
||||
if let associateBundleURL = url {
|
||||
return Bundle(url: associateBundleURL as URL)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user