0
こんにちは私はこの拡張子をNSUserDefaults
としてObj-Cを使ってアクセスする必要があります。拡張でswift-ObjC内の拡張子にある静的変数にアクセス
構造体
public struct UserDefaultsEntry {
let key: String
func get() -> AnyObject? {
return NSUserDefaults.standardUserDefaults().objectForKey(key)
}
func set(value: AnyObject) {
switch value {
case is Bool:
NSUserDefaults.standardUserDefaults().setBool(value as! Bool, forKey: key)
break
case is String:
NSUserDefaults.standardUserDefaults().setObject(value as! String, forKey: key)
break
case is NSData:
NSUserDefaults.standardUserDefaults().setObject(value as! NSData, forKey: key)
break
default:
break
}
}
func remove() {
NSUserDefaults.standardUserDefaults().removeObjectForKey(key)
}
}
同じ拡張クラスのstatic変数
public static let testDefault = UserDefaultsEntry(key: "testDefault")
ので、私は
let string = "test"
NSUserDefaults.testDefault.set(string)
を使用することにより迅速なクラスで、通常はそれを呼び出すことができますが、失敗したObj-Cクラスでそれを呼び出す。それではどうすればいいですか?事前のおかげで
EDIT: は
[NSUserDefaults.testDefault get];
を使用しようとしましたが、私は
プロパティ 'testDefault' オブジェクトの型には見られない 'NSUserDefaults'