2013-10-15 5 views
0

Я потащил просмотр изображения на мою раскадровку, и создал класс под названием LogoНевозможно присвоить класс к изображению на раскадровку

#import <UIKit/UIKit.h> 

@interface Logo : UIView 

@property(strong,nonatomic)UIImageView *logo; 

-(void)loadLogo; 

@end 

Однако, когда я пытаюсь присвоить Logo класс моего просмотра изображения на раскадровки в инспекторе идентификации, он не распознает логотип как законный класс, и поэтому я не могу его назначить. Почему это происходит? Логотип является подклассом UIView, не так ли? Как исправить эту проблему?

ответ

0

Вы уже ответили на свой вопрос. Ваша проблема в том, что вы хотите присвоить свой класс Logo, который унаследован от UIView, с UIImageView. Это не сработает.

Вы должны назначить свой вид своим классом под Инспектором удостоверений.

enter image description here

Затем измените @property(weak,nonatomic) UIImageView IBOutlet *logo; свойство, и вы можете назначить его.

Добавить View в свой ВК, а затем присвоить View с @interface Logo : UIView, Затем измените @property(weak,nonatomic) UIImageView IBOutlet *logo;, Добавить UIImageView вашему View в Interface Builder, то вы можете назначить ваш IBOutlet *logo; с UIImageView, что вы разместили там

If вы размещаете UIView на своем ViewController, из корня вы можете назначить его своим пользовательским классом, только если он унаследован от UIView.

Если вы разместите UIImageView на вашем контролере ViewController, вы можете назначить его своим пользовательским классом, только если он унаследован от UIImageView. и т. Д.

+0

Да. Этот шаг я не мог сделать. Когда я набираю логотип и нажимаю Enter, он возвращается к UIImageView, а это означает, что он не признает, что существует класс под названием Logo. – OneZero

+0

Потому что ваш суперкласс - UIView, а не UIImageView. Вы должны подклассифицировать UIImageView: @interface Logo: UIImageView – incmiko

+0

Я отредактировал мой ответ – incmiko

0

1 - Перетащите объект view из библиотеки объектов и добавьте его в представление в своем раскадровке.

2 - Выберите его и установить свой класс, чтобы быть Logo

3 - Добавить вид изображений на него

И теперь вы сможете назначить вид изображения, чтобы стать logo розеткой.

Если единственным способом вы будете добавлять logo через раскадровки, то ваш интерфейс должен выглядеть следующим образом:

@property (nonatomic, weak) IBOutlet UIImageView *logo; 
Смежные вопросы