iOS5から使えるようになったUIAppearance。これちゃんと学ばなきゃダメですね。だいぶ、他のこともできるようになってきたので近いうちにちゃんと学びます。言い訳でした。
さて、タイトルの件です。よくあるあれですね。これ、今僕が作りました。
作成方法はシンプルで下記のコードで行けます。
UIBarButtonItem *settingsBtn = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"gear"] style:UIBarButtonItemStylePlain target:self action:@selector(showSettings)]; [settingsBtn setBackgroundImage:[UIImage new] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
普通、UINavigationItemに独自の画像を乗せようとして、StyleをUIBarButtonItemStylePlainに指定すると、自動的にUIBarButtonItemStyleBorderedに変えられちゃうんですね。それを回避しています。iOS5から使えるようになったUIAppearanceのメソッドを使っていると思うのですが(ちゃんとあとで調べます)。背景画像を設定できる機能を利用して背景なしにしてます。
ふむふむ。わかれば簡単。