Я хочу использовать градиент для кнопки в iOS, но так как рамка кнопки (button.layer.bounds) изменяется из-за автоматического макета, я обнаружил, что должен поместить insertSublayer в метод viewDidAppear - что означаеткнопка сначала появляется без градиента, а затем перерисовывается с ней.Есть ли способ получить окончательный размер кнопки в viewWillAppear, чтобы я мог применить правильный градиент размера до его появления?
Вот как я могу это сделать сейчас:
- (void)viewDidAppear:(BOOL)animated{
CAGradientLayer *gradient1=[CAGradientLayer layer];
gradient1.colors=[NSArray arrayWithObjects:(id)light.CGColor,(id)dark.CGColor,nil];
gradient1.cornerRadius=10;
gradient1.frame=_go_button.layer.bounds;
gradient1.borderColor=dark.CGColor;
gradient1.borderWidth=1;
[_go_button.layer insertSublayer:gradient1 atIndex:0];