0

Navitemボタンの幅プロパティを設定しようとしていますが、探しているものを正確に処理する方法が見つかりませんでした。iPhone:navigationItemボタンのwidthプロパティを設定する

以下のコードでは、ボタンのサイズを細かく設定していて、うまく表示されますが、実際にはボタンは表示されません。それはボタンのように見えるべきであり、それは背景イメージを持っています!

UIButton *addCommentButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[addCommentButton setFrame:CGRectMake(0, 0, 25, 25)]; 
[addCommentButton addTarget:self action:@selector(addComment) forControlEvents:UIControlEventTouchUpInside]; 
[addCommentButton setBackgroundImage:[UIImage imageNamed:@"myImage.png"] forState:UIControlStateNormal]; 
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:addCommentButton]; 

次のコードでは、ボタンサイズ(25,25)を設定できません。

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"myImage.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(addComment)]; 

明示的に幅を設定しようとしましたが、違いはありません。

[[self.navigationItem rightBarButtonItem] setWidth] = 25;

誰かがこの問題を解決するのに手伝ってください。ありがとう。

答えて

0

私はあなたの問題を解決するための簡単な説明はありませんが、私は次のリンクに掲載されたコードはあなたの解決に役立つと思います。

Customization of UINavigationBar and the back button

+0

ありがとうございました。その正確なコードは私のためには機能しませんが、私は自分のことをやり遂げて実装する方法を知っています!私は本当にイメージと丸いボタンを取得するために統合する必要があるコードの量に本当に驚いた!!右ボタンの項目のサイズを変更するだけです。 – applefreak

0

あなたの最初のコードスニペットは、「ボタン」ルックアンドフィールを持っていませんカスタムボタンを生成します。 2番目のコードスニペットでは、UIBarButtonItemにボーダリングされたUIBarButtonItemスタイル(UIButtonではなく)が付いています。最初のコードスニペットを使用して、Customの代わりにRoundedRectというボタンタイプを持つUIButtonを作成します。

+0

私も丸めて試してみました。私は背景色を指定することができません! 2番目のコードスニペットで同じボタンを作成したいが、サイズを変更したい! – applefreak

関連する問題