代码示例:
UIImage *image = [UIImage imageNamed:@"radio_back.png"];
UIButton* button= [[UIButton alloc] initWithFrame:CGRectMake(0,0, image.size.width,image.size.height)];
button.adjustsImageWhenHighlighted = YES; // 按按钮时,显示按钮的变化
[button setBackgroundImage:image forState:UIControlStateNormal];
[button addTarget:self action:@selector(onBack:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem* ButtonItem = [[UIBarButtonItem alloc] initWithCustomView:button] ;
self.navigationItem.leftBarButtonItem = ButtonItem ;
[ButtonItem release] ;
[button release];
UIBarButtonItem虽然有initWithImage,但只是设置前景图,背景框仍在。setBackgroundImage有测试过,但会崩溃就没有深究。