93

タッチが割り当てられているポイントと呼ばれる CGPoint があります。

UITouch *touch = [touches anyObject];

CGPoint point = [touch locationInView:self];

x 座標値をコンソール ログに取得したい:

NSLog(@"x: %s", point.x);

これを使用すると、ログ出力は次のようになります。

x: (ヌル)

これがデバッガーと変数ウォッチを使用して呼び出されたときにポイントが null ではないことを確認しました。

どんな助けでも感謝します、

ありがとう // :)

4

6 に答える 6

260

実際、ログを記録する最も簡単な方法CGPointは次のとおりです。

NSLog(@"%@", NSStringFromCGPoint(point));

デスクトップのCocoaに相当するものはNSStringFromPoint()です。

于 2009-09-25T12:07:50.957 に答える
24

point.xは浮動小数点数であるため、次を使用する必要があります。

NSLog(@"x: %f", point.x);
于 2009-09-25T10:25:04.643 に答える
9

CGPoint値をログに記録する最も簡単な方法は、NSValueクラスを使用することです。コンソール用に適切にフォーマットされたすべての関連値が得られるからです。それは次のように行われます:

NSLog(@"myPoint = %@", [NSValue valueWithCGPoint:myPoint]);

の( ) または( ) プロパティをログに記録しようとしているときに、+valueWithCGRectおよび+valueWithCGSizeのメソッドを使用することもできます。NSValueframeCGRectsizeCGSizeUIView

于 2009-09-25T10:35:29.317 に答える
2

NSLog(@"point x,y: %f,%f", point.x, point.y);

于 2010-11-12T11:19:35.750 に答える
0

point.xは浮動小数点数なので、次のようにコーディングする必要があります。

NSLog(@"%@",[NSString StringWithFormat:@"%f",point.x]);
于 2010-09-06T13:40:21.420 に答える