UIBarButtonItem에 아이콘 폰트(FontAwesome)를 설정한다.

8422 단어 iOSfont아이폰


왼쪽 상단 Github 아이콘을 지정하는 방법입니다. 이것은 글꼴이며 이미지가 아닙니다.
코드로 자유롭게 색상과 크기를 변경할 수 있습니다.

Cocoapods에서 설치


platform :ios, '7.0'
pod 'BlocksKit', '~> 2.2'
pod 'FontAwesome+iOS', :git => 'https://github.com/alexdrone/ios-fontawesome'

글꼴은 다음 위치로 들어갑니다.Pods > FontAwesome+iOS > Resources > FontAwesome.ttfYourProjectName-Info.plist에 Fonts provided by application를 추가하고 그 안에 item 0 , item 1 등의 Value에 FontAwesome.ttf

라이브러리 로드


#import <BlocksKit+UIKit.h>
#import <FontAwesome+iOS/NSString+FontAwesome.h>
#import <FontAwesome+iOS/UIFont+FontAwesome.h>

UIBarButtonItem 지정


UIBarButtonItem *cancelItem =
    [[UIBarButtonItem alloc]
            bk_initWithTitle:[NSString fontAwesomeIconStringForEnum:FAGithub]
                       style:UIBarButtonItemStylePlain
                     handler:^(id sender) {
            // do something
        }];
[cancelItem setTitleTextAttributes:@{NSFontAttributeName:[UIFont fontWithName:kFontAwesomeFamilyName size:30.0],
            NSForegroundColorAttributeName:[UIColor colorWithRed:0.411 green:0.057 blue:0.058 alpha:1.000]
            } forState:UIControlStateNormal];
self.navigationItem.leftBarButtonItem = cancelItem;

이 코드는 다른 라이브러리의 BlocksKit과 함께 사용하지만 아이콘을 표시하는 목적에는 필수는 아닙니다.

추가: 별법


UIButton *iconButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
[iconButton bk_addEventHandler:^(id sender) {

        NSLog(@"Tapped!");

        [sender setTitleColor:[UIColor colorWithRed:0.411 green:0.057 blue:0.058 alpha:1.000] forState:UIControlStateNormal];
    } forControlEvents:UIControlEventTouchUpInside];
[iconButton setTitle:[NSString fontAwesomeIconStringForEnum:FAGithub] forState:UIControlStateNormal];
iconButton.titleLabel.font = [UIFont fontWithName:kFontAwesomeFamilyName size:36.0];
iconButton.titleLabel.textColor = [UIColor colorWithRed:0.411 green:0.057 blue:0.058 alpha:1.000];

UIBarButtonItem *cancelItem = [[UIBarButtonItem alloc] init];
[cancelItem setCustomView:iconButton];
self.navigationItem.leftBarButtonItem = cancelItem;

이쪽은 위치를 조정할 수 있으므로 좋을지도 모릅니다. 탭한 후에 색이 하얗게 되는 것을 방지하기 위해 다시 색을 설정하도록 하고 있습니다.

참조



ぇ tp // // ぉr 타우소메. 기주 b. 이오 / 흠 t 아우 소메 /
htps : // 기주 b. 코 m / 아 xd 로네 / 이오 s 훗

좋은 웹페이지 즐겨찾기