20

私の質問のタイトルは、どのように変換CGPointNSValuesて保存できるかを示しているので、 Into array In swiftに保存できます。

Objective-C では、次のように実行できます。

  // CGPoint converted to NSValue
     CGPoint point = CGPointMake(9, 9);
     NSValue *pointObj = [NSValue valueWithCGPoint:point];

しかし、どうすればこれを迅速に行うことができるか、誰か教えてもらえますか?

前もって感謝します。

4

5 に答える 5

38

そのようなことを試してください:

let point = CGPointMake(9, 9)
var pointObj = NSValue(CGPoint: point)
于 2014-10-08T08:12:16.233 に答える
12

ご想像のとおりです。

let point = CGPoint(x: 9.0, y: 9.0)
let pointObj = NSValue(CGPoint: point)
let newPoint = pointObj.CGPointValue()
于 2014-10-08T08:14:02.227 に答える
7

Objective-C で配列を使用する予定がなく、Swift 配列として保持できる場合は、ポイントを NSValue に変換する必要はありません。ポイントを配列に直接追加するだけです。

let point1 = CGPoint(x: 9.0, y: 9.0)
let point2 = CGPoint(x: 10.0, y: 10.0)

let pointArray = [point1, point2] // pointArray is inferred to be of type [CGPoint]

let valuesArray = pointsArray as [NSValue]
于 2015-01-01T12:16:15.677 に答える