场景
view_alpha_bug.gif
- 上图gif中左手边是
iOS11
系统,右手边是iOS10
系统
- 更新到
iOS11
之后,发现在Xib创建的 UIScrollView
上的 UITapGestureRecognizer
单击手势可以点击,但是动画设置的View的alpha失效了。
- 在iOS 11之前的系统都是正常的,没有任何的问题。这让我一阵头疼,UI的显示都正常,没有任何问题。
下面是我原来的代码,在设置View的alpha值改变现实和隐藏, iOS11
之前都是生效的
- (void)showBottomView {
//显示底部文字label bottomView
[UIView animateWithDuration:.2 animations:^{
_bottomView.alpha = 1.0;
_navigationView.alpha = 1.0;
}];
}
- (void)hiddenBottomView {
//隐藏底部文字label bottomView
[UIView animateWithDuration:.2 animations:^{
_bottomView.alpha = 0.0;
_navigationView.alpha = 0.0;
}];
}
我的解决办法是,将UIScrollView也添加一下屏幕适配,添加如下代码:
if (@available(iOS 11.0, *)) {
self.scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
else {
self.automaticallyAdjustsScrollViewInsets = NO;
}
- 添加了上面的适配代码,View的alpha值就生效了,我猜测是iOS11
saveArea
导致的,具体什么原因没找到,如果有知道原因的还请告知🙏,O(∩_∩)O谢谢!!
网友评论