iOS 8 UIVisualEffect UIBlurEffect и масштабирование / перемещение / изменение размера
У меня есть подкласс UIButton, который я размываю, и это выглядит великолепно:
- (id)initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame])
{
self.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.0];
UIVisualEffect *blurEffect;
blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
UIVisualEffectView *visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
visualEffectView.frame = self.bounds;
[self insertSubview:visualEffectView atIndex:0];
visualEffectView.userInteractionEnabled = NO;
self.layer.cornerRadius = 23.8;
self.clipsToBounds = YES;
self.titleLabel.font = [UIFont fontWithName:@"DINCondensed-Bold" size:15.0];
}
return self;
}
Эти кнопки должны часто перемещаться (переводить), изменять размер и масштабироваться, и размытие исчезает и становится полупрозрачным, когда я выполняю эти действия. Это происходит, если я двигаюсь, используя рамку / центр, используя CGAffineTransformation.
Есть ли способ вылечить это?
1 ответ
Одним из решений этой проблемы является обнаружение того, когда устройство изменило ориентацию, создание эффекта размытия и обновление ограничений каждый раз