Как увеличить высоту UIButton в соответствии с текстом заголовка?

Мне нужно увеличить высоту UIButton в соответствии с его названием.

Изображение, демонстрирующее проблему ниже

2 ответа

Решение

Это полностью проверено, как вы сказали, динамическая высота

myButton=[UIButton buttonWithType:UIButtonTypeRoundedRect];
myButton.titleLabel.numberOfLines=0;
myButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
NSString *titleOfButton=@"this is the very launch soon title here u can pass as long as big string";
[myButton setTitle:titleOfButton forState:UIControlStateNormal];
CGSize constraint1=CGSizeMake(150.0f, 5000.0f);
CGSize size1=[titleOfButton sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:constraint1 lineBreakMode:NSLineBreakByWordWrapping];
[myButton setFrame:CGRectMake(10,50,150, size1.height+20)];
[self.view addSubview:myButton];

Используйте этот код для помощи

UIFont font = myButton.titleLabel.font;
CGSize textsize = [myButton.titleLabel.text sizeWithFont:font constrainedToSize:CGSizeMake(myButton.frame.size.width,999) lineBreakMode:UILineBreakModeTailTruncation]; 

[myButton setFrame:CGRectMake(myButton.frame.origin.x,myButton.frame.origin.y,myButton.frame.size.width, textsize.height)];
Другие вопросы по тегам