2015-03-08 6 views
2

Я пытаюсь программно установить изображение сверху и заголовок под ним кнопкой без использования фонового изображения. Я знаю, что этот вопрос задан раньше, и я пробовал отрицательную левую вставку и отрицательную верхнюю вставку для заголовка, я явно определил шрифт, и ничего не работает. Приведенный выше код устанавливает заголовок в порядке, если я прокомментирую setImage, но если я не исчез, заголовок исчезнет. Что мне не хватает?Установите оба изображения и заголовок на UIButton

// Add menu button 
    let buttonImage = UIImage(named: "cheeseburger.png") 
    let button = CategoryButton.buttonWithType(.Custom) as UIButton 
    button.frame = CGRectMake(10, 10, 100, 140) 

    button.setImage(buttonImage, forState: .Normal) 
    button.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 40, 0) 

    button.setTitle("Cheeseburger", forState: .Normal) 
    button.titleLabel!.font = UIFont(name: "Helvetica", size: 12) 
    button.setTitleColor(UIColor.whiteColor(), forState: .Normal) 
    button.titleEdgeInsets = UIEdgeInsetsMake(110, 0, 0, 0) 

    categoryView.addSubview(button) 

ответ

0

Я пробовал множество способов сделать это. Если вы строите интерфейс в раскадровке и знаете название &, изображение никогда не изменится, вы можете настроить изображение вставки &, пока оно не будет выглядеть правильно. Но для создания кнопки программно или изменения названия/изображения во время выполнения я не смог найти формулу, которая работала последовательно.

В конце концов, я создал собственный класс кнопок и переместил функцию layoutSubviews, чтобы добавить изображение &.

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

+0

было бы полезно, если бы вы разместили несколько найденных вами подходящих ваших потребностей. – user1244109

1

Установить тип кнопки от пользовательского до системного интерфейса! Это сработало для меня!

2

Изображение выталкивает название далеко вправо. Попробуйте сыграть с левыми: -200, -300, -400 .... Это должно сделать текст видимым. У меня была одна и та же проблема, и игра с ним немного решила.

+0

Tks .... Это сработало для меня –

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