Set Text for Custom UIBarButtonItem

iphone, uibarbuttonitem

Solution

you should set title on the UIButton , not the UIBarButtonItem

[backToRecent setTitle:@"Recent" forState:UIControlStateNormal];

and it's not good to make the same name of variable and method

[backToRecent addTarget:self action:@selector(backToRecent) forControlEvents:UIControlEventTouchUpInside];

it's not work , because you use

[backToRecent setImage:[UIImage imageNamed:@"back.png"]forState:UIControlStateNormal];

try use

[backToRecent setBackgroundImage:[UIImage imageNamed:@"back.png"]forState:UIControlStateNormal];

Problem

I need to set title for Custom UIBarButtonItem. I've the following code: ``` UIButton* backToRecent = [UIButton buttonWithType:UIButtonTypeCustom]; [backToRecent setImage:[UIImage imageNamed:@"back.png"]forState:UIControlStateNormal]; [backToRecent addTarget:self action:@selector(backToRecent) forControlEvents:UIControlEventTouchUpInside]; [backToRecent setFrame:CGRectMake(0, 0, 60, 30)]; UIBarButtonItem* backButtonItem = [[UIBarButtonItem alloc]initWithCustomView:backToRecent]; [backButtonItem setTitle:@"Recent"]; partViewController.navigationItem.leftBarButtonItem = backButtonItem; [backButtonItem release]; ``` But the button appears without the "Recent" text.

Original source