Utilitário de criação UIBarButtonItem rápido e fácil

Portanto, esta dica não é nada surpreendente, mas descobri que precisava criar muitos programas UIBarButtonItemusando FontAwesome (e texto normal) com atributos de texto específicos e um fundo em branco. Em vez de me repetir várias vezes no código, acabei de criar uma UIBarButtonItemcategoria simples para fazer o trabalho pesado para mim.

Para criar um simples UIBarButtonItemusando um ícone FontAwesome específico, você pode fazer isso usando a categoria:

NSDictionary *faTextAttributes = 
@{ UITextAttributeFont : [UIFont fontWithName:
kFontAwesomeFamilyName size
: 22],
UITextAttributeTextColor : [UIColor whiteColor],
UITextAttributeTextShadowColor:
[UIColor blackColor],
UITextAttributeTextShadowOffset:
[NSValue valueWithCGSize: CGSizeMake(0,-1)]
};

UIImage *blankImage = [UIImage new];

UIBarButtonItem *aMenuButton =
[UIBarButtonItem barButtonItemUsingFontAwesomeIcon:
@"icon-reorder"
target
:self action:@selector(showMenu:)
withTitleTextAttributes
:faTextAttributes
andBackgroundImage
:blankImage];

Então, por um lado UIBarButtonItem, não vai economizar tempo, mas eu tinha muito o que construir no código. Eu também tinha alguns itens específicos para o aplicativo que precisavam ser adicionados a todos os UIBarButtonItemcriados dessa maneira, então também os adicionei à categoria. Definitivamente economizou tempo e digitação, pois o utilitário o criou para mim. (Observação: deixei de fora as peças personalizadas na essência.)

Usar somente texto UIBarButtonItemsé virtualmente idêntico – basta ter um Dicionário de Atributos de Texto com uma fonte regular e usar barButtonItemWithTitle:target:action:withTitleTextAttributes:andBackgroundImage:].

A essência inteira está em https://gist.github.com/kerrishotts/4980294 e sob uma licença do MIT.