3

ツールバーに四角いボタンが欲しいのですが。UIBarButtonItemボタンを長方形に押すのに十分な幅の画像を使用しています。ドキュメントを調べましたが、使用するのに最適なサイズが見つかりませんでした。

他の回答を見る29.0と、一般的なサイズのようですが、確認をお願いします。ボタンの設定方法は次のとおりです。

UIBarButtonItem *locationButtonItem = [[UIBarButtonItem alloc] 
                                   initWithImage:[UIImage imageNamed:@"location.png"]
                                   style:UIBarButtonItemStyleBordered
                                   target:self
                                   action:@selector(locationButtonTapped:)];
[locationButtonItem setWidth:29.0f];

ツールバーボタンを正方形にするには、どの幅に設定する必要がありますか?

4

4 に答える 4

10
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setBackgroundImage:[UIImage imageNamed:@"location.png"] forState:UIControlStateNormal];
    button.frame=CGRectMake(0,0, 29, 29);
[button addTarget:self action:@selector(locationButtonTapped:) forControlEvents:UIControlEventTouchUpInside];

UIBarButtonItem *btnDone = [[UIBarButtonItem alloc] initWithCustomView:button];
//[btnDone setTarget:self];

self.navigationItem.rightBarButtonItem = btnDone;
[btnDone release];

これを試してみてください...多分それはあなたを助けるでしょう.

于 2012-05-21T13:51:06.743 に答える
1

UIKit Artwork Extractorを使用しUIBarButtonImageたところ、内部の画像が 13x16 @1x ピクセルの場合、完全な正方形であることがわかりました。UIBarButtonSystemItemAddスタイル( )で使用される「プラス」記号ボタンを簡単に測定し、UINavigationBarAddButton.png自分でも試してみました。これが誰かを助けることを願っています。

于 2012-09-29T12:50:23.880 に答える
0

UIBarButton の幅は変更できません。

その代わりに、カスタム幅が必要な場合は、initWithCustomView を使用する必要があります。

UIToolbar のボタンの場合にのみ width プロパティを使用できます。

于 2012-05-21T13:53:34.957 に答える
0

これを試して:[locationButton setWidth:locationButton.height];

于 2012-05-21T13:06:23.883 に答える