在 NSTextField 上实现活力效果

问题描述 投票:0回答:1

如何在

NSTextField
上实现活力效果 我添加了带有界面生成器的
NSVisualEffectView
并尝试使用
NSAppearance
为标签添加活力

var varLabel = NSTextField()
varLabel.stringValue = "Some"
varLabel.appearance = NSAppearance(named: .vibrantLight)

enter image description here

swift blur uivibrancyeffect
1个回答
0
投票
  1. 覆盖
    allowsVibrancy

目标-C

@interface VibrancyTextField : NSTextField
@end

@implementation VibrancyTextField

- (BOOL)allowsVibrancy {
    return YES;
}

@end

斯威夫特

class VibrancyTextField: NSTextField {
    override var allowsVibrancy: Bool {
        return true
    }
}

  1. 使用 textColor 作为 标准颜色。其他颜色(例如 RGB 或默认标签颜色)将不起作用。

目标-C

VibrancyTextField *testField = [VibrancyTextField new];
testField.stringValue = @"Hello ████████████████████";
testField.textColor = NSColor.systemGrayColor;
[testField release];

斯威夫特

let testField = VibrancyTextField()
testField.stringValue = "Hello ████████████████████"
testField.textColor = .systemGrayColor

截图

© www.soinside.com 2019 - 2024. All rights reserved.