ios – 如何更改Xcode Playground上的区域设置

我想更改 Xcode Playground上的语言环境来测试本地化.

我找到了这个解决方案,但它不适用于Xcode 6.3.2 Playground:
http://natashatherobot.com/locale-playground-swift/

解决方法

哦,我找到了解决方案!
extension NSLocale {
    class func mono_currentLocale() -> NSLocale {
        return NSLocale(localeIdentifier: "fr")
    }
}
let original = class_getClassMethod(NSLocale.self,#selector(getter: NSLocale.currentLocale))
let swizzled = class_getClassMethod(NSLocale.self,#selector(NSLocale.mono_currentLocale))
method_exchangeImplementations(original,swizzled)

编辑:Swift 4.1版本:

extension NSLocale {
    @objc class func mono_currentLocale() -> NSLocale {
        return NSLocale(localeIdentifier: "fr")
    }
}
let original = class_getClassMethod(NSLocale.self,#selector(getter: NSLocale.current))!
let swizzled = class_getClassMethod(NSLocale.self,#selector(NSLocale.mono_currentLocale))!
method_exchangeImplementations(original,swizzled)

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...