我已经看了很多,似乎无法在我的工具栏中使用自定义图像。我在ViewController.m的自定义初始化部分中有以下代码,这是添加此项的正确位置吗?我没有在上方工具栏中看到任何图像显示。我想把它放在视图的右上方。
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
UIImage *image = [UIImage imageNamed:@"camera_30_30.png"];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:image forState:UIControlStateNormal];
button.frame = CGRectMake( 0, 0, image.size.width, image.size.height);
button.showsTouchWhenHighlighted = YES;
[button addTarget:self action:@selector(myAction) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithCustomView:button];
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject:barButtonItem];
self.toolbarItems = items;
}
return self;
}
感谢您的光临。
答案 0 :(得分:2)
这可能与您分配toolbarItems时有关。我假设一旦加载了UI,就需要在viewDidLoad方法中设置它。
您可能还可以使用以下方法简化条形按钮的创建:
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc]initWithImage:@"camera_30_30.png" style:UIBarButtonItemStyleBordered target:self action:@selector(myAction)];
此外,在您的代码中,您需要在最后发布项目