I am new in iOS. And I am facing a problem to add font awesome on UINavigation Bar. I am using code for Image Like this
UIImage *listImage2 = [UIImage imageNamed:@"Image1.png"];
UIButton *listButton2 = [UIButton buttonWithType:UIButtonTypeCustom];
CGRect listButton2Frame = listButton2.frame;
listButton2Frame.size = listImage2.size;
listButton2.frame = listButton2Frame;
[listButton2 setImage:listImage2 forState:UIControlStateNormal];
[listButton2 addTarget:self
action:@selector(LogoutClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton2 =
[[UIBarButtonItem alloc] initWithCustomView:listButton2];
UIImage *listImage4 = [UIImage imageNamed:@"Image2.png"];
UIButton *listButton4 = [UIButton buttonWithType:UIButtonTypeCustom];
// get the image size and apply it to the button frame
CGRect listButton4Frame = listButton4.frame;
listButton4Frame.size = listImage4.size;
listButton4.frame = listButton4Frame;
[listButton4 setImage:listImage4 forState:UIControlStateNormal];
[listButton4 addTarget:self
action:@selector(ActualNotificationClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton4 =
[[UIBarButtonItem alloc] initWithCustomView:listButton4];
UIImage *listImage3 = [UIImage imageNamed:@"Image3.png"];
UIButton *listButton3 = [UIButton buttonWithType:UIButtonTypeCustom];
// get the image size and apply it to the button frame
CGRect listButton3Frame = listButton3.frame;
listButton3Frame.size = listImage3.size;
listButton3.frame = listButton3Frame;
[listButton3 setImage:listImage3 forState:UIControlStateNormal];
[listButton3 addTarget:self
action:@selector(EmployeeClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton3 =
[[UIBarButtonItem alloc] initWithCustomView:listButton3];
self.navigationItem.rightBarButtonItems= [NSArray arrayWithObjects:jobsButton2,jobsButton4, nil];
self.navigationItem.leftBarButtonItems=[NSArray arrayWithObjects:jobsButton3, nil];
and for font awesome I am using code like this
lab.font = [UIFont fontWithName:@"FontAwesome" size:25];
lab.textColor = [UIColor whiteColor];
lab.text = [NSString awesomeIcon:FaCalendarChecko];
I need to add the font awesome Label instead of image on UINavigation Bar. The Image I am using is look like this
I have Add Font Awesome like this code
newjoinlbl.font = [UIFont fontWithName:@"FontAwesome" size:8];
newjoinlbl.textColor = [UIColor whiteColor];
newjoinlbl.text = [NSString awesomeIcon:FaChild];
UIButton *listButton2 = [UIButton buttonWithType:UIButtonTypeCustom];
// get the image size and apply it to the button frame
CGRect listButton2Frame = listButton2.frame;
listButton2Frame.size = listImage2.size;
listButton2.frame = listButton2Frame;
[listButton2 setTitle:newjoinlbl.text forState:UIControlStateNormal];
[listButton2 addTarget:self
action:@selector(LogoutClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton2 =
[[UIBarButtonItem alloc] initWithCustomView:listButton2];
But It give me out put like this
Font awesome is work proper in view
I just need to add font awesome label instead of Image on UINAvigation Bar. Thanks in Advance!
try like,
UIImage *listImage4 = [UIImage imageNamed:@"Image2.png"];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 30, 30)]; // desired frame
[label setFont: [UIFont fontWithName:@"FontAwesome" size:25]]; //desired fornt
UIButton *listButton4 = [UIButton buttonWithType:UIButtonTypeCustom];
// get the image size and apply it to the button frame
CGRect listButton4Frame = listButton4.frame;
listButton4Frame.size = listImage4.size;
listButton4.frame = listButton4Frame;
[listButton4 setTitle:label.text forState:UIControlStateNormal];
// [listButton4 setImage:listImage4 forState:UIControlStateNormal];
[listButton4 addTarget:self
action:@selector(ActualNotificationClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton4 =
[[UIBarButtonItem alloc] initWithCustomView:listButton4];
Update :
Try to set attributed string
like,
UIImage *listImage4 = [UIImage imageNamed:@"Image2.png"];
UIButton *listButton4 = [UIButton buttonWithType:UIButtonTypeCustom];
// get the image size and apply it to the button frame
CGRect listButton4Frame = listButton4.frame;
listButton4Frame.size = listImage4.size;
listButton4.frame = listButton4Frame;
UIFont *font = [UIFont fontWithName:@"FontAwesome" size:25.0];
NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font
forKey:NSFontAttributeName];
NSAttributedString *attributedStr = [[NSAttributedString alloc] initWithString:@"yourTitleString" attributes:attrsDictionary];
[listButton4 setAttributedTitle:attributedStr forState:UIControlStateNormal];
[listButton4 addTarget:self
action:@selector(ActualNotificationClick:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *jobsButton4 =
[[UIBarButtonItem alloc] initWithCustomView:listButton4];
Update 2
UIFont *font = [UIFont fontWithName:@"FontAwesome" size:25.0];
UIColor *color = [UIColor whiteColor];
NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font
forKey:NSFontAttributeName];
[NSDictionary dictionaryWithObjectsAndKeys:font,NSFontAttributeName,color,NSForegroundColorAttributeName, nil];
NSAttributedString *attributedStr = [[NSAttributedString alloc] initWithString:@"yourTitleString" attributes:attrsDictionary];