无法更改UIBarButtonItem的图像

can*_*boy 6 iphone objective-c uibarbuttonitem ios

我正在尝试各种方法来更改UIBarButtonItem的图像,一旦按下它,没有任何运气.

// bookmarkButton is a property linked up in IB
-(IBAction)bookmarkButtonTapped:(id)sender
{
NSLog(@"this action triggers");
// attempt 1
UIBarButtonItem* aBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"bookmarkdelete.png"] style:UIBarButtonItemStylePlain target:self action:@selector(bookmarkButtonTapped:)];
bookmarkButton = aBarButtonItem;
[aBarButtonItem release];

// attempt 2
bookmarkButton.image = [UIImage imageNamed:@"bookmarkdelete.png"];
}
Run Code Online (Sandbox Code Playgroud)

还有另一种方法吗?

can*_*boy 2

工具栏包含一个数组 - items - 作为属性。因此,将工具栏设置为 IBOutlet 属性后,我必须在该数组中插入一个新按钮。如下所示:

NSMutableArray *items = [[NSMutableArray alloc] initWithArray:self.toolBar.items];
UIBarButtonItem *newButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"newButton.png"]  style:UIBarButtonItemStylePlain target:self action:@selector(buttonTapped:)];
[items replaceObjectAtIndex:0 withObject:newButton];
self.toolBar.items = items;
[newButton release];
[items release];
Run Code Online (Sandbox Code Playgroud)