我有一个CAGradientLayer插入到应用程序底部弹出的这个小细节视图的底部.正如你所看到的,我将颜色从白色设置为清晰,但是出现了这种奇怪的灰色色调.有任何想法吗?
// Set up detail view frame and gradient
[self.detailView setFrame:CGRectMake(0, 568, 320, 55)];
CAGradientLayer *layer = [CAGradientLayer layer];
layer.frame = self.detailView.bounds;
layer.colors = [NSArray arrayWithObjects:(id)[UIColor whiteColor].CGColor, (id)[UIColor clearColor].CGColor, nil];
layer.startPoint = CGPointMake(1.0f, 0.7f);
layer.endPoint = CGPointMake(1.0f, 0.0f);
[self.detailView.layer insertSublayer:layer atIndex:0];
Run Code Online (Sandbox Code Playgroud)
这是有问题的观点:
我有一个UIButton(在界面构建器中创建),我通过设置button.layer.borderRadius = button.frame.size.width / 2.0;(以编程方式,在viewDidAppear :)中变成一个圆圈.但是,它所属的viewController以模态方式呈现动画.由于viewDidAppear直到过渡动画结束后才调用,因此按钮在此之前是正方形,这使得突然变化非常刺耳.
我无法设置半径viewDidLoad,因为按钮属性不正确(宽度太大),我认为是因为自动布局约束尚未正确解决.我试图通过调用来纠正这种[self.view setNeedsLayout]中viewDidLoad,然后设置cornerRadius,但按钮的宽度仍然是错误的.我不明白的是,在动画期间,其他一切都正确呈现,建议自动布局约束/已经/已经解决,或者iOS以快速动画的名义做了其他事情(比如存储快照预览用于动画).
有什么建议?
尝试在viewDidLoad中设置角半径的结果:
我使用脚本在构建时生成应用程序图标(只需为调试模式添加“开发”标题)。使用 ImageMagick 和 Ghostscript(谷歌中有很多例子)非常容易。在我开始使用新的 Xcode 9 之前一切正常。现在,我可以在 MyAppName.app 文件上看到更新的图标,但模拟器/设备显示来自资产的 AppIcon。有什么建议?谢谢
ios ×3
autolayout ×1
calayer ×1
imagemagick ×1
iphone ×1
objective-c ×1
uibutton ×1
uiview ×1
xcode ×1
xcode9 ×1