gpt4 book ai didi

ios - 如何在 UIView 中绘制透明度?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:56:32 25 4
gpt4 key购买 nike

我很清楚这个问题已被问过很多次,但显然有些不同。我在 UIImageView 中的人脸上画矩形,所以我需要矩形是透明的。

据我所知,我遵循了在 View 中绘制透明背景的所有建议(例如,清除当前图形上下文的矩形)。我还将 View 设置为不透明并将 backgroundColor 设置为 clearColor。是否需要其他步骤?

-(instancetype)init
{
self = [super init];
if ( self ) {
self.opaque = NO;
self.backgroundColor = [UIColor clearColor];
self.clearsContextBeforeDrawing = NO;
}
return self;
}

- (void)drawRect:(CGRect)rect {
UIBezierPath * path = [UIBezierPath bezierPathWithRect:rect];

CGContextRef ctx = UIGraphicsGetCurrentContext();
[[UIColor clearColor] setFill];

CGContextClearRect(ctx, rect);

[self.rectColor setStroke];
path.lineWidth = 5.0;
[path stroke];
}

@end

An example of my output

我需要背景是透明的,这个 View 默认只显示黑色。我试图直接清除 CGContext 的矩形,因为我听说这是(曾经)通常的解决方案。

最佳答案

我猜你的 init 方法永远不会被调用(毕竟,这不是指定的初始化器),所以你的代码永远不会运行,因此 View 被创建为不透明的。

关于ios - 如何在 UIView 中绘制透明度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33643859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com