Перерисовывание GradientButton (Подклассы от UIButtons) - PullRequest
2 голосов
/ 22 марта 2012

Я использую класс GradientButton в своем приложении.Когда я меняю кадр кнопки, CAGradientLayer не меняется для нового кадра.CAGradientLayer - это размер старых кадров, из-за которого кнопка выглядит очень плохо.Добавленная ширина или высота - это просто сплошной цвет и не имеет градиента.Одним из решений будет удаление кнопки и ее повторное добавление, однако я не хочу идти по этому пути.Есть ли метод, который я могу вызвать, чтобы перерисовать GradientButton, чтобы градиентный слой охватывал новые размеры кнопок?

Обновление: removeFromSuperview и addSubview не устраняет проблему.

1 Ответ

0 голосов
/ 22 марта 2012

Создан этот метод для решения проблемы:

- (void)setFrame:(CGRect)frame {
    [super setFrame:frame];
    shineLayer.frame = self.layer.bounds;
    highlightLayer.frame = self.layer.bounds;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...