Программно установить изображение и текст на UIButton

Мне нужно программно создать кнопку с изображением для нормального и выделенного состояния, а также с текстом. Я не могу создать его с помощью Interface Builder, потому что мне нужно создать кнопки поверх UIScrollView. Вот код, который у меня есть:

- (void)loadView {
    CGRect fullScreenRect=[[UIScreen mainScreen] applicationFrame];
    scrollView=[[UIScrollView alloc] initWithFrame:fullScreenRect];
    scrollView.contentSize=CGSizeMake(320,960);

    UIImageView *tempImageView2 = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.jpeg"]];

    UIImage * buttonImage = [UIImage imageNamed:@"contentlist_active.png"];

    self.view=scrollView;
    [scrollView addSubview:tempImageView2];

    btn = [UIButton buttonWithType:UIButtonTypeCustom];
    btn.frame = CGRectMake(22, 100, 277, 32);

    [btn setImage:buttonImage forState:UIControlStateNormal]; 

    [btn setTitle:@"hello world" forState:UIControlStateNormal];
    [btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

    [scrollView addSubview:btn];

}

Но текст на кнопке не отображается. Если я закомментирую setImageдля button, тогда текст будет отображаться идеально, иначе нет. Могу ли я иметь и текст, и изображение одновременно?

41
задан ayaio 19 September 2018 в 08:46
поделиться