скопировать происхождение uiimageview в CGPoint - PullRequest
1 голос
/ 19 января 2011

Я новичок в программировании для iPhone / Objective-C.У меня есть UIImageView * myImage, чьи x, y, ширина, высота устанавливаются с помощью CGRect со значениями (20, 20, 100, 100) или чем-либо другим;

Q1) Когда я делаю следующее, почему я не могу получить значения источникав CGPoint.

CGPoint myPoint = myImage.frame.origin;

NSLog(@"X:%f Y:%f",mypoint.x, mypoint.y) // Prints X: 0.0 and Y: 0.0 instead of X:20.0 and Y: 20.o
NSLog(@"X:%f Y:%f",myImage.frame.origin.x, myImage.frame.origin.x) // Prints X: 20.0 and Y: 20.0  

Вышеприведенные операторы NSLog не выводят ожидаемые значения для myPoint, но выводят правильные значения для myImage.frame.origin.Почему?

Q2) Кроме того, почему я не могу установить @property в CGPoint?

1 Ответ

2 голосов
/ 19 января 2011

1) Вы пробовали:

CGPoint myPoint = CGPointMake(myImage.fram.origin.x, myImage.frame.origin.y);

2) После сом-тестирования я обнаружил, что вы должны иметь свой CGPoint в качестве свойства, подобного этому:

@interface MyClass : NSObject {

CGPoint myPoint;
...
}
@property (nonatomic) CGPoint myPoint;

...
@end

А потом:

@implementation MyClass
@synthesize myPoint;

...

@end

это сработало для меня.

(Должен признать, я еще не понял (неатомное) и, если это необходимо, но пока оно работает ...)

...