Files
midi_ios/TUIKit/TUIRoomKit/Source/Localized/TUIRoomKitLocalized.swift

57 lines
1.8 KiB
Swift
Raw Normal View History

2025-08-14 10:07:49 +08:00
//
// 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
}