0

我以编程方式在工具栏上包含一个操作按钮和一个撰写按钮,代码如下:

UIBarButtonItem *compose = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:7 target:self action:@selector(userWritesHaiku)];

compose.style=UIBarButtonItemStyleBordered;

UIBarButtonItem *action = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:9 target:self action:@selector(userWritesHaiku)];

action.style=UIBarButtonItemStyleBordered;

(然后将它们放在一个数组中并将它们分配给工具栏。)

但这给了我以下输出:

以编程方式创建的按钮

我想要的是以下内容,我可以使用 Interface Builder 创建,但我没有使用 Interface Builder。

使用 Interface Builder 创建的按钮

如何以编程方式获取后一个图像?

4

1 回答 1

1

该项目的style属性的默认值为UIBarButtonItemStylePlain。您需要将其设置为UIBarButtonItemStyleBordered.

我在 iOS 5.0 模拟器中尝试了这段代码:

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCompose target:self action:@selector(self)];
//item.style = UIBarButtonItemStyleBordered;
self.toolbar.items = [self.toolbar.items arrayByAddingObject:item];

我得到了这个结果:

普通的 UIBarButtonItem

然后我将其更改为以下代码:

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCompose target:self action:@selector(self)];
item.style = UIBarButtonItemStyleBordered;
self.toolbar.items = [self.toolbar.items arrayByAddingObject:item];

我得到了这个结果:

带边框的 UIBarButtonItem

于 2012-08-16T03:01:21.860 回答