Я играю с iOS SDK и пытался использовать самодельный класс в приложении для iPhone.
#import <Foundation/Foundation.h>
#import "UIKit/UIKit.h"
@interface MyPoint
: NSObject {
CGFloat x;
CGFloat y;
}
- (void) setX:(CGFloat)x_;
- (void) setY:(CGFloat)y_;
- (CGFloat) getX;
- (CGFloat) getY;
- (CGFloat) getDistance;
@end
Это заголовок моего класса Point. Теперь в приложении я хочу ввести 2 цифры (в двух разных текстовых полях), а затем, когда я нажимаю кнопку «Вычислить», я вызываю функцию getDistance
- (IBAction)calcDistance:(id)sender {
CGFloat x = [fieldx.text doubleValue];
CGFloat y = [fieldy.text doubleValue];
[point setX:(x)];
[point setY:(y)];
CGFloat test = [point getX];
CGFloat test2 = [point getY];
CGFloat result = [point getDistance];
NSString *resultString = [[NSString alloc] initWithFormat: @"Distance: %f",result];
resultLabel.text = resultString;
[resultString release];
}
У меня сложилось впечатление, что
[name method]
- это способ доступа к методам-членам указателя, но он ничего не делает, при отладке любого из значений, которые я хочу назначить описанным выше способом, ничего не меняется.
Наконец, интерфейс моего приложения:
@interface iOS4ViewController : UIViewController {
UITextField* fieldx;
UITextField* fieldy;
UILabel* resultLabel;
MyPoint* point;
}
Надеюсь, мне было достаточно ясно, что кто-то может указать на очевидную ошибку, которую я делаю:)
Спасибо!