swift 中第二个 运行 的透明度(alpha)被移除
Transparency(alpha) is removed from second run in swift
我正在通过以下代码加载子视图:
HideView.backgroundColor = UIColor.clearColor()
var loadingView = UIView (frame: CGRectMake(120, 190, 90, 90));
loadingView.center = HideView.center
loadingView.backgroundColor = UIColor(red:0.76, green:0.76, blue:0.76, alpha:0.9)
loadingView.clipsToBounds = true;
loadingView.layer.cornerRadius = 10.0
loadingView.layer.shouldRasterize = true
HideView.addSubview(loadingView)
以上代码运行正常,我们可以看到背景如下:
但是当这个屏幕子视图再次出现时(从第二次开始)透明度消失如下:
您将 'loadingView' 添加到 'HiddenView' 两次。这就是为什么它在 2 日 运行 看起来被封锁了。
相反,确保只添加一次。
HideView.backgroundColor = UIColor.clearColor()
if (!addedLoadingView) { // Or anything alike...
addedLoadingView = YES
var loadingView = UIView (frame: CGRectMake(120, 190, 90, 90));
loadingView.center = HideView.center
loadingView.backgroundColor = UIColor(red:0.76, green:0.76, blue:0.76, alpha:0.9)
loadingView.clipsToBounds = true;
loadingView.layer.cornerRadius = 10.0
loadingView.layer.shouldRasterize = true
HideView.addSubview(loadingView)
}
我正在通过以下代码加载子视图:
HideView.backgroundColor = UIColor.clearColor()
var loadingView = UIView (frame: CGRectMake(120, 190, 90, 90));
loadingView.center = HideView.center
loadingView.backgroundColor = UIColor(red:0.76, green:0.76, blue:0.76, alpha:0.9)
loadingView.clipsToBounds = true;
loadingView.layer.cornerRadius = 10.0
loadingView.layer.shouldRasterize = true
HideView.addSubview(loadingView)
以上代码运行正常,我们可以看到背景如下:
但是当这个屏幕子视图再次出现时(从第二次开始)透明度消失如下:
您将 'loadingView' 添加到 'HiddenView' 两次。这就是为什么它在 2 日 运行 看起来被封锁了。
相反,确保只添加一次。
HideView.backgroundColor = UIColor.clearColor()
if (!addedLoadingView) { // Or anything alike...
addedLoadingView = YES
var loadingView = UIView (frame: CGRectMake(120, 190, 90, 90));
loadingView.center = HideView.center
loadingView.backgroundColor = UIColor(red:0.76, green:0.76, blue:0.76, alpha:0.9)
loadingView.clipsToBounds = true;
loadingView.layer.cornerRadius = 10.0
loadingView.layer.shouldRasterize = true
HideView.addSubview(loadingView)
}