Программа получает SIGABRT при установке ивара - PullRequest
0 голосов
/ 26 августа 2011
[[self numSidesBox] setName: @"numSidesBox"];

Эта строка кода получает сигнал SIGABRT, и я не знаю почему. numSidesBox является экземпляром моего подкласса UITextField. У меня есть NSString ivar, который использует

@property (nonatomic, retain) NSString *name;

способ создания сеттеров / геттеров. Я понятия не имею, что вызывает эту проблему.

1 Ответ

0 голосов
/ 26 августа 2011

Почему бы не попробовать:

self.numSidesBox.name=@"numSidesbox"

Предполагается, что в заголовке numSidesBox есть следующее:

@property (nonatomic, retain) NSString*name;

и в вашем .m:

@synthesize name;

Это просто общая идея, чтобы вы начали и указали в правильном направлении; вы можете предпочесть что-то отличное от retain, а также вам понадобится ваш объект numSidesBox, аналогично синтезированный в текущем .h / .m, чтобы использовать точечную запись на нем.

Кроме того, то, что numSidesBox имеет ивар, не означает, что он действительно существует в памяти. Прежде чем вы сможете использовать его, вы должны в какой-то момент инициализировать его с помощью alloc и init или пользовательского или выделенного инициализатора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...