У меня есть UIButton внутри пользовательского UITableViewCell, созданного в Interface Builder, высота и ширина определяются ограничениями Autolayout.Получите размер UIButton внутри пользовательского UITableViewCell с Autolayout
Мне нужно получить размер UIButton после автоматического определения конечного размера.
что я пробовал:
Внутри моей обычай UITableViewCell
- (void)layoutSubviews
{
[super layoutSubviews];
NSLog(@"%f", self.infoButton.bounds.size.width);
self.infoButton.layer.cornerRadius = self.infoButton.bounds.size.width/2;
self.infoButton.clipsToBounds = YES;
self.infoButton.layer.borderColor = [UIColor whiteColor].CGColor;
self.infoButton.layer.borderWidth = 4.0f;
}
Проблема заключается в том, что у меня есть разные значения:
2015-06-30 03:01:47.578 MYPROJ[3596:34092] 48.000000
2015-06-30 03:01:47.581 MYPROJ[3596:34092] 48.000000
2015-06-30 03:01:47.583 MYPROJ[3596:34092] 48.000000
2015-06-30 03:01:47.585 MYPROJ[3596:34092] 56.000000
2015-06-30 03:01:47.586 MYPROJ[3596:34092] 56.000000
2015-06-30 03:01:47.586 MYPROJ[3596:34092] 56.000000
2015-06-30 03:01:53.482 MYPROJ[3596:34092] 48.000000
2015-06-30 03:01:53.484 MYPROJ[3596:34092] 56.000000
2015-06-30 03:01:54.939 MYPROJ[3596:34092] 56.000000
2015-06-30 03:02:04.161 MYPROJ[3596:34092] 56.000000
2015-06-30 03:02:05.115 MYPROJ[3596:34092] 56.000000
2015-06-30 03:02:05.957 MYPROJ[3596:34092] 56.000000
Я также пробовал код insid е - (void)awakeFromNib
Я попытался как self.infoButton.bounds.size.width
и self.infoButton.frame.size.width
и это дает мне статическую ширину до Autolayout, который в моем случае 48,0 Также
Я боюсь, что решение положить код внутри - (void)layoutSubviews
может повлиять на производительность, так как это будет называть все, что пользователь прокручивает и применять преобразование слоя каждый раз, есть ли лучшее решение?
сейчас так обновленный ответ. !! –
Я пробовал 'self.infoButton.frame.size.width' bt, он всегда меняет размер перед автозапуском – Aladin
Можете ли вы предоставить горизонтальные ограничения, которые вы использовали для кнопки ячейки? Это поможет .. – Tejvansh