我使用MDCTextInputControllerFilled
并设置activeColor
属性会更改下划线和浮动占位符。但是,我找不到设置闪烁光标颜色的方法,默认情况下它是蓝色。
有没有办法改变颜色?
答案 0 :(得分:1)
由于MDCTextField
是UITextField
的子类,因此您应更改tintColor
属性以更改光标的颜色:
mdcTextField.tintColor = .red
答案 1 :(得分:1)
我遇到了同样的问题,并通过子类化MDCTextField并覆盖layoutSubviews来改变tintColor,只有在布局视图后才能解决它。这对我有用。
例如:
AppaceaTextField.h
#import "MaterialTextFields.h"
@interface AppaceaTextField : MDCTextField
@end
AppaceaTextField.m
#import "AppaceaTextField.h"
@implementation AppaceaTextField
- (void) layoutSubviews{
[super layoutSubviews];
self.tintColor = [UIColor redColor];
}
@end
希望有所帮助!
答案 2 :(得分:1)
答案 3 :(得分:0)
试试这个
override func viewDidLoad() {
super.viewDidLoad()
textfield.tintColor = .red
}
答案 4 :(得分:0)
其他的都试过了。除了这个没有任何作用:
let colorScheme = MDCSemanticColorScheme()
colorScheme.primaryColor = .systemBlue // <-- This works in my case
colorScheme.errorColor = .systemRed
let container = MDCContainerScheme()
container.colorScheme = colorScheme
let textField = MDCTextField()
let controller = MDCTextInputControllerUnderline(textInput: textField)
controller.applyTheme(withScheme: scheme)
上下文:
pod 'MaterialComponents/TextFields', '~> 104.0.1'
pod 'MaterialComponents/TextFields+Theming', '~> 104.0.1'