addSubview в представлении UIViewController не имеет ответа - PullRequest
1 голос
/ 28 июля 2011

Вопрос новичка. Я создал UIView с именем TestView с 2 IBOutlet UIButton. Я хотел бы добавить это представление к первоначально запущенному контроллеру представления.

Файл заголовка TestView выглядит следующим образом:

#import <UIKit/UIKit.h>

@interface TestView : UIView {
    IBOutlet UIButton *btn1;
    IBOutlet UIButton *btn2;
}

@end

Я пытаюсь добавить вид на экран:

TestView *view = [[TestView alloc] init];
[self.view addSubview:view];
[view release];

но я не получил ответа. Как я могу добавить TestView к исходному виду?

p.s. TestView как XIB тоже называется TestView.xib

Окружающая среда:

  • xCode 4
  • iOS 4.3.2

Ответы [ 2 ]

2 голосов
/ 28 июля 2011

Вы должны указать кадр

рамка означает оригинал + размер

здесь orgin (0,0)

размер (200 200)

в противном случае я не знаю, где нарисовать этот вид

TestView *view = [[TestView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];

[view setBackgroundColor:[UIColor greenColor]]; 

[view addSubview:btn1];

[view addSubview:btn2];
//here add whatever u want

[self.view addSubview:view];

[view release];
0 голосов
/ 28 июля 2011

Вы не должны называть это view, потому что у вашего UIView уже есть переменная экземпляра, называемая view.

Вы также можете создать это с помощью Interface Builder и связать свои элементы с вашими розетками, это будет проще

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