如何在UITextField的左侧添加放大镜图标?

我找到了类似问题here的答案,但是将其转换为swift时遇到问题。

答案:

因此,这是带有unicode字符的代码:

UILabel *magnifyingGlass = [[UILabel alloc] init];
[magnifyingGlass setText:[[NSString alloc] initWithUTF8String:"\xF0\x9F\x94\x8D"]];
[magnifyingGlass sizeToFit];

[textField setLeftView:magnifyingGlass];
[textField setLeftViewMode:UITextFieldViewModeAlways];

编辑:为使外观适合iOS 7样式,请添加Unicode变体选择器\ U000025B6。

我的代码:
let searchIconView = UILabel()
// Doesn't work: searchIconView.text = NSString.init(UTF8String: "\xF0\x9F\x94\x8D")
searchIconView.sizeToFit()
searchTextField.leftView = searchIconView
searchTextField.leftViewMode = .Always

最佳答案

两种简单的方法:

  • 您可以使用XCode直接在代码中添加Unicode符号(编辑-> Emoji&Symbols)。
  • 您可以使用类似的内容

    searchIconView.text = NSString(unicodeScalarLiteral:“\ u {D83D}”)as String

  • (您必须在这里使用您的角色)

    10-08 17:50