2015-07-09 4 views
-1

Я использую модель MVC для моего проекта. Если я пишу код для custom view в viewDidLoad непосредственно в viewController файла, то появляется view. Но если я создаю другой класс для просмотра, то он не показывает метку.Пользовательский вид не отображается

Код:

ViewController.m:

- (void)viewDidLoad{ 

[homepagVar homeView:self.view]; /* homepagVar is the variable of homePage class and homeView is method of homePage class */ 

[super viewDidLoad]; 

} 

Класс ГЛАВНОЙ СТРАНИЦЫ:

-(UIView*)homeView:(UIView*)Hview 
{ 

    toplabel=[[UILabel alloc]initWithFrame:CGRectMake(0, 18, Hview.frame.size.width,30)]; 

    [email protected]"NexgHomes.com"; 
    toplabel.textColor=[UIColor whiteColor]; 
    toplabel.textAlignment=NSTextAlignmentCenter; 
    toplabel.font=[UIFont fontWithName:@"Helvetica"size:18]; 
    toplabel.backgroundColor=[UIColor blueColor]; 
    [Hview addSubview:toplabel]; 
    return Hview; 
} 

Он не показывает метку таким образом. Зачем?

+0

вы должны добавить подвид в viewDidLoad в другой класс может иметь другой экземпляр self.view –

+0

Моя первая догадка что метка обрезаются, как это не вписывается в прямоугольник , Хм, вы должны заменить self.view на Hview в методе homeView. – ikrabbe

+0

Разве вы не должны добавить подпункт к 'Hview', а не self.view? Или установите self.view = Hview (и, кстати, по соглашению, ваша переменная должна быть названа 'hView'). Кроме того, где вы устанавливаете 'homepagVar'? – Paulw11

ответ

0

Try ниже код

- (void)viewDidLoad{ 

    [super viewDidLoad]; 
    [homepagVar homeView:self.view]; 
    [self.view addSubview:homepagVar]; 

} 
+0

'homepagVar' является переменной класса' HomePage', а не класса 'UIView'. В любом случае, спасибо. @lalit –

+0

так, это работает или нет? –

+0

Я не выделил память для homePageVar, поэтому он не подходит. После выделения появляется. Это была глупая ошибка. @lalit –

Смежные вопросы