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 に答える