2011-02-02 5 views
0

Я создаю приложение, в котором мне нужно изменить размер кнопки в соответствии с длиной заголовка. Я написал следующий кодИзменение размера UIButton Изменяет тип UIButton

`UIButton * newButton = [[UIButton buttonWithType: UIButtonTypeRoundedRect] сохранить];

newButton.backgroundColor = [ UIColor clearColor]; 
newButton.titleLabel.backgroundColor = [ UIColor whiteColor]; 
[newButton setTitle:@"devsri" forState:UIControlStateNormal]; 
newButton.titleLabel.textColor = [ UIColor blackColor]; 

CGSize expectedLabelSize = [newButton.titleLabel.text sizeWithFont:newButton.titleLabel.font]; 
newButton.frame = CGRectMake(xBase, yBase, expectedLabelSize.width, expectedLabelSize.height); 

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

Спасибо заранее!

ответ

0

У меня есть ошибка здесь. Я инициализировал фрейм размером размером заголовка, который в итоге был больше, чем исходная кнопка по ширине. Таким образом, линия

newButton.frame = CGRectMake(xBase, yBase, expectedLabelSize.width, expectedLabelSize.height); 

в

newButton.frame = CGRectMake(xBase, yBase, expectedLabelSize.width + 15, expectedLabelSize.height); 

Это позволит расширить кнопку достаточно, чтобы разместить новый размер этикетки.

:)

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