文本字段占位符字体会产生问题
Textfield placeholder font creates issue
我已将按钮作为 rightView 添加到文本字段。
我已将具有自定义字体的属性文本设置为占位符文本。
我的文本字段的占位符和文本字体不同。
但是当文本字段的文本很大时,如果我 select 整个文本并删除
然后它不会以其字体显示占位符文本。它以文本字段的文本字体显示。
详细说明:
- 我的文本域的文本字体是:OpenSans Bold 18.0
- 我的文本字段的占位符文本字体是:OpenSans 18.0(常规)
但是当我 select 打孔文本(大)并删除文本时,它会显示占位符文本:OpenSans Bold 18.0
但它应该显示占位符文本:OpenSans 18.0(常规)
我认为每次占位符时您都必须设置字体 appears/disappears。设置文本字段委托并添加此代码...
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
let length = (textField.text?.characters.count)! + (string.characters.count - range.length)
// If there is text in the text field
if (length > 0) {
// Set textfield font
textField.font = UIFont(name: "OpenSans Bold", size: 18)
} else {
// Set textfield placeholder font (or so it appears)
textField.font = UIFont(name: "OpenSans Regular", size: 18)
}
return true;
}
Obj-C:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
// If there is text in the text field
if (textField.text.length + (string.length - range.length) > 0) {
// Set textfield font
textField.font = [UIFont fontWithName:@"OpenSans Bold" size:18];
} else {
// Set textfield placeholder font (or so it appears)
textField.font = [UIFont fontWithName:@"OpenSans Regular" size:18];
}
return YES;
}
我已将按钮作为 rightView 添加到文本字段。
我已将具有自定义字体的属性文本设置为占位符文本。
我的文本字段的占位符和文本字体不同。
但是当文本字段的文本很大时,如果我 select 整个文本并删除 然后它不会以其字体显示占位符文本。它以文本字段的文本字体显示。
详细说明:
- 我的文本域的文本字体是:OpenSans Bold 18.0
- 我的文本字段的占位符文本字体是:OpenSans 18.0(常规)
但是当我 select 打孔文本(大)并删除文本时,它会显示占位符文本:OpenSans Bold 18.0
但它应该显示占位符文本:OpenSans 18.0(常规)
我认为每次占位符时您都必须设置字体 appears/disappears。设置文本字段委托并添加此代码...
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
let length = (textField.text?.characters.count)! + (string.characters.count - range.length)
// If there is text in the text field
if (length > 0) {
// Set textfield font
textField.font = UIFont(name: "OpenSans Bold", size: 18)
} else {
// Set textfield placeholder font (or so it appears)
textField.font = UIFont(name: "OpenSans Regular", size: 18)
}
return true;
}
Obj-C:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
// If there is text in the text field
if (textField.text.length + (string.length - range.length) > 0) {
// Set textfield font
textField.font = [UIFont fontWithName:@"OpenSans Bold" size:18];
} else {
// Set textfield placeholder font (or so it appears)
textField.font = [UIFont fontWithName:@"OpenSans Regular" size:18];
}
return YES;
}