加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 将NSView子类化为具有透明背景

发布时间:2020-12-16 03:12:39 所属栏目:百科 来源:网络整理
导读:我正在创建一个应用程序,我需要一个透明的NSView,里面有一个透明的PNG图像.问题是,我正在绘制的NSView有一个灰色的背景.我有它子类(作为TransparentRectangleView),但不知道放在drawRect中以使其透明. 我已经覆盖了isOpaque方法返回NO,但似乎没有帮助… 或者
我正在创建一个应用程序,我需要一个透明的NSView,里面有一个透明的PNG图像.问题是,我正在绘制的NSView有一个灰色的背景.我有它子类(作为TransparentRectangleView),但不知道放在drawRect中以使其透明.

我已经覆盖了isOpaque方法返回NO,但似乎没有帮助…

或者,是否已经有一个类似于iPhone的UIImageView的子类NSView(只要我可以在其中添加子视图,我需要在里面添加一些文本).

解决方法

要使视图透明,只需用[NSColor clearColor]填充.
- (void)drawRect:(NSRect)rect {
    [[NSColor clearColor] set];
    NSRectFill(rect);
}

isOpaque的默认实现返回NO,所以如果你是NSView子类,而不是其他视图,你不需要担心覆盖它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读