我想禁用iPhone SDK的添加按钮边框,所以它只是“+”按钮(没有黑色bg):
当它位于工具栏中时,这似乎是一项简单的任务,但是当它位于UINavigationBar中时却不是。无论如何,如果有人知道如何,或者甚至可能,那么请分享!这是我在 RootViewController.m 中的当前代码:
self.title = @"Code Master";
addButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
target:self action:@selector(addButtonClicked:)];
self.navigationItem.rightBarButtonItem = addButton;
修改
@Dee所以你的代码很棒,显示我想要的东西!现在还有另一个问题我会解释:
编辑按钮: UINavigationBar的左侧
完成按钮: UINavigationBar的左侧(隐藏);单击“编辑”按钮时,它将使用此“完成”按钮替换“编辑”按钮
加按钮: UINavigationBar的右侧;在“编辑模式”时隐藏,在“正常模式下显示(当完成按钮不可见时)”时显示“
所以基本上我现在的问题是每当我点击编辑,然后完成时,加号按钮不会从隐藏中返回。我正在使用您的确切代码,它与我之前的代码一起使用。我很确定这是因为在你的代码中,没有任何标签“addButton”。以下是我的主文件中的代码:
-(void)setEditing:(BOOL)editing animated:(BOOL)animated {
[super setEditing:editing animated:YES];
if (editing)
{
self.navigationItem.rightBarButtonItem = nil;
}
else
{
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"Plus.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(addButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 50, 29)];
UIBarButtonItem *barBtn = [[UIBarButtonItem alloc] initWithCustomView:button];
self.navigationItem.rightBarButtonItem = barBtn;
[barBtn release];
}
[self.tableView reloadData];
}
答案 0 :(得分:1)
创建“+”图像并将其设置为按钮&将该按钮提供给UIBarButtonItem,如下所示:
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"Plus.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(addButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 50, 29)];
UIBarButtonItem *barBtn = [[UIBarButtonItem alloc] initWithCustomView:button];
[self.navigationItem setRightBarButtonItem:barBtn];
[barBtn release];