如何在swift中向NSmutable字典添加和检索CGpoint值

如何在swift中向NSmutable字典添加和检索CGpoint值,swift,Swift,这是我的密码 let point: CGPoint = CGPoint(x:10,y:10) let ns = NSValue(CGPoint: point) let dict:NSMutableDictionary = ["point":"\(ns)"] let getVal:CGPoint = (dict["point"] as? NSValue)!.CGPointValue() 也许是这样的 let point = CGPoint(x:10,y:10)

这是我的密码

let point: CGPoint = CGPoint(x:10,y:10) let ns = NSValue(CGPoint: point) 
let dict:NSMutableDictionary = ["point":"\(ns)"] 
let getVal:CGPoint = (dict["point"] as? NSValue)!.CGPointValue()

也许是这样的

        let point = CGPoint(x:10,y:10)
        let point2 = NSPoint(x:20,y:10)
        var dict = [String : NSPoint ]()
        dict["point"] = point
        dict["point2"] = point2
        print(dict["point"])
        print(dict["point2"])

您可以在swift中互换使用CGPoint和NSPoint(NSPoint仅如@OOPer所指出的那样是OSX)

可能类似于这样

        let point = CGPoint(x:10,y:10)
        let point2 = NSPoint(x:20,y:10)
        var dict = [String : NSPoint ]()
        dict["point"] = point
        dict["point2"] = point2
        print(dict["point"])
        print(dict["point2"])

您可以在swift中交替使用CGPoint和NSPoint(NSPoint仅如@OOPer所指出的那样是OSX)

最好使用swift
字典
,而不是
NSMUTABLEDDICTION
。但是,如果您出于某种原因需要使用
NSMutableDictionary
,您可以像这样将
CGPoint
s存储在
NSMutableDictionary

let point: CGPoint = CGPoint(x:10, y:10)
let ns = NSValue(CGPoint: point)
let dict:NSMutableDictionary = ["point": ns] //<- You should not use `"\(ns)"` hear!
if let val = dict["point"] as? NSValue {
    let cgPointVal = val.CGPointValue()
    print(cgPointVal) //->(10.0, 10.0)
}
let point:CGPoint=CGPoint(x:10,y:10)
设ns=NSValue(CGPoint:point)
让dict:NSMutableDictionary=[“点”:ns]//(10.0,10.0)
}

最好使用Swift
字典,而不是
NSMutableDictionary
。但是,如果您出于某种原因需要使用
NSMutableDictionary
,您可以像这样将
CGPoint
s存储在
NSMutableDictionary

let point: CGPoint = CGPoint(x:10, y:10)
let ns = NSValue(CGPoint: point)
let dict:NSMutableDictionary = ["point": ns] //<- You should not use `"\(ns)"` hear!
if let val = dict["point"] as? NSValue {
    let cgPointVal = val.CGPointValue()
    print(cgPointVal) //->(10.0, 10.0)
}
let point:CGPoint=CGPoint(x:10,y:10)
设ns=NSValue(CGPoint:point)
让dict:NSMutableDictionary=[“点”:ns]//(10.0,10.0)
}

不要使用
NSMutableDictionary
,你应该使用本机Swift字典。不要使用
NSMutableDictionary
,你应该使用本机Swift字典。@daven11,OP询问的是
CGPoint
,而
NSPoint
在iOS中不可用。哦,好的,他实际上没有提到iOS,但是我明白你的意思-为什么不存储CGPoint的呢?@daven11,这是另一个问题,正如我所说的“如果你有理由需要使用NSMutableDictionary”,如果是我,我会使用
[String:CGPoint]
而不是
NSMutableDictionary
@daven11,OP询问的是
CGPoint
,而且,
NSPoint
在iOS中不可用。哦,好吧,他实际上没有提到iOS,但我明白你的意思-为什么不存储CGPoint的呢?@daven11,这是另一个问题,正如我所说的“如果你有什么理由需要使用NSMutableDictionary”,如果是我,我会使用
[String:CGPoint]
而不是
NSMutableDictionary