2013-05-08 6 views
0

В моем проекте я использовал приведенный ниже код для этой цели и работает правильно. Мой код:Присвоение UIButton UIView в Xcode

UIView *view = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",index]]] autorelease]; 

view.frame = CGRectMake(70, 80, 180, 260); 
return view; 

Но здесь вместо UIImageView я хотел бы использовать UIButton, поэтому я заменил первого LIN ВФ выше код по:

UIView *view=[[UIButton alloc] setBackgroundImage:(UIImage *)[scrollImages objectAtIndex:index] forState:UIControlStateNormal]; 

Но на данный момент я получаю сообщение об ошибке сообщение как

«Инициализация UIView * _strong» с выражением несовместимого типа «void».

Может кто-нибудь помочь мне решить эту проблему путем замены UIImageView с UIButton ....

+0

почему вы хотите изменить UIButton в UIView? –

ответ

0

Вы должны init экземпляр UIButton после его создали с помощью `Alloc»

UIButton *button = [[UIButton alloc] init]; 
[button setBackgroundImage:(UIImage *)[scrollImages objectAtIndex:index] forState:UIControlStateNormal]; 
UIView *view = button; 

You must use an init... method to complete the initialization process

- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state ничего не возвращает (void), это, безусловно, несовместимый тип с UIView.

+0

Извините, но я получаю ту же ошибку. – haritha

+0

@haritha Я обновил ответ. – shanegao

0

Как это ...

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button addTarget:self action:@selector(pressed:) forControlEvents:UIControlEventTouchUpInside]; 

UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",index]]; 
[button setImage:image forState:UIControlStateNormal]; 
button.frame = CGRectMake(70, 80, 180, 260); 
[self.view addSubview:button]; 
Смежные вопросы