it-swarm.dev

CGPoint veri içeren NSLog

Bir dokunma atanan nokta adında bir CGPoint var:

UITouch *touch = [touches anyObject];

CGPoint point = [touch locationInView:self];

X koordinat değerini konsol günlüğüme almak istiyorum:

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

Bunu kullandığımda bunun için log çıktısı şudur:

x: (boş)

Hata ayıklayıcı ve değişken izleme kullanılarak çağrıldığında, noktanın boş olmadığını doğruladım.

Herhangi bir yardım takdir

Teşekkürler // :)

88
Spanky

Aslında, CGPoint dosyasını kaydetmenin en kolay yolu:

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

Masaüstü Cocoa eşdeğeri NSStringFromPoint().

249
Jens Ayton

point.x bir kayan nokta numarasıdır, bu nedenle kullanmanız gerekir:

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

CGPoint değerini günlüğe kaydetmenin en basit yolu, NSValue sınıfını kullanmaktır, çünkü konsol için güzel bir şekilde biçimlendirilmiş tüm ilgili değerleri verecektir. Böyle yapılır:

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

Ayrıca, bir NSValue __ frame (CGRect) veya size (CGSize) özelliklerini kaydetmeye çalışırken UIView+valueWithCGRect ve +valueWithCGSize yöntemlerini de kullanabilirsiniz.

9
Nathan de Vries

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

1
Nicki

point.x bir kayan nokta sayısıdır. öyleyse şöyle kodlamalısın:

NSLog(@"%@",[NSString StringWithFormat:@"%f",point.x]);
0
Suresh

kullanım:

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

NSString'i aşağıdaki bilgiler için de kullanabilirsiniz:

NSStringFromCGPoint
NSStringFromCGSize
NSStringFromCGRect
NSStringFromCGAffineTransform
NSStringFromUIEdgeInsets

0
Aks