Я не могу объявить это свойство в файле .h, могу ли я сделать это в файле .m? - PullRequest
0 голосов
/ 21 мая 2011

Я хочу создать свойство из представления, которое уже импортировало мой класс в его собственный файл .h, и поэтому я не могу импортировать его .h файл в мой файл .h, потому что это вызывает проблемы.Это означает, что я должен поместить его импорт в файл .m.

Поместить его в файл .m:

View1 * view1;

работает нормально.Но вставка @property вызывает проблемы.Я не могу найти, где лучше всего положить его, чтобы не вызвать ошибку.Есть ли обходной путь к этому?

1 Ответ

1 голос
/ 21 мая 2011

Вы можете поместить это в свой @interface в свой заголовочный файл без импорта View1.h.Просто используйте предварительное объявление, как это:

@class View1;

@interface MyClass : NSObject {

}

@property (attrs) View1 *view1;
@end

Вы также можете объявить свойства в своем файле реализации (.m), если вам когда-либо понадобится, с расширением класса, например:

@interface MyClass() 

@property (attrs) View1 *somePrivateProperty;
@end

Это полезно по другим причинам, но не обязательно в вашем случае из того, что вы сказали.Думайте о нем как о вторичном @interface со свойствами и методами, которые вы, возможно, захотите скрыть от других классов, которые импортируют «MyClass.h»

Надеюсь, это поможет.

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