iOS – UIBarButtonItem Identifier – opción para crear el button de rueda dentada de "configuration"

Quiero crear un UIBarButtonItem para representar la configuration de la aplicación (rueda dentada). Actualmente solo puedo encontrar una opción para crear UIBarButtonItem (Interface Builder> Attributes Inspector> identificador) como "Agregar" (+), "Editar", "Listo", "Cancelar", etc.

No puedo encontrar una opción para crear un icono de configuration (rueda dentada). ¿Hay alguna forma de hacer esto en el generador de interfaces o mediante el código?

¿O tengo que crear una image y luego la image?

Unicode tiene varios ejemplos notables que puede copyr y pegar simplemente en una statement de cadena en Xcode, o usar el estándar Unicode String Escape (\ uxxxx) y iOS es bastante fluido cuando se trata de Unicode (sé que algunos de los caracteres son bastante feos , pero eso es Unicode para ti '):

Unicode Character 'GEAR WITHOUT HUB' (U + 26ED): http://www.fileformat.info/info/unicode/char/26ed/index.htm

Unicode Character 'GEAR' (U + 2699): http://www.fileformat.info/info/unicode/char/2699/index.htm

O prepare una image y establezca la propiedad customView de UIBarButtonItem en consecuencia.

Composition de CodaFi y respuestas de user1046037 :

Crear UIBarButtonItem con unicode como título.

Tienes que inicializar UIBarButtonItem con el título ( initWithTitle: no el elemento del sistema ( initWithBarButtonSystemItem: .

Puede establecer un título personalizado con una cadena (como el carácter unicode).

Puedes cambiar el tamaño del título.

 UIBarButtonItem *settingsButton = [[UIBarButtonItem alloc] initWithTitle:@"\u2699" style:UIBarButtonItemStylePlain target:self action:@selector(showSettings)]; UIFont *customFont = [UIFont fontWithName:@"Helvetica" size:24.0]; NSDictionary *fontDictionary = @{NSFontAttributeName : customFont}; [settingsButton setTitleTextAttributes:fontDictionary forState:UIControlStateNormal]; 

Para get el ícono de rueda dentada con Swift, haga lo siguiente en viewDidLoad() , suponiendo que ha conectado su button desde su vista hacia su controller. ( @IBOutlet var settingsButton: UIBarButtonItem! : @IBOutlet var settingsButton: UIBarButtonItem! )

  self.settingsButton.title = NSString(string: "\u{2699}") as String if let font = UIFont(name: "Helvetica", size: 18.0) { self.settingsButton.setTitleTextAttributes([NSFontAttributeName: font], forState: UIControlState.Normal) } 

Esto funciona para mí en Swift 3 y iOS 10 …

 let settingsButton = UIBarButtonItem(title: NSString(string: "\u{2699}\u{0000FE0E}") as String, style: .plain, target: self, action: #selector(settings)) let font = UIFont.systemFont(ofSize: 28) // adjust the size as requinetworking let attributes = [NSFontAttributeName : font] settingsButton.setTitleTextAttributes(attributes, for: .normal) 

Ver el comentario de @ hazernut en la respuesta aceptada. Sin agregar \u{0000FE0E} a la cadena se muestra como un emoji y es inmune a cualquier configuration de apariencia. Agregar esa cadena lo arregla.