簡體   English   中英

iOS 6-UIBarButtonItem setStyle不起作用

[英]iOS 6 - UIBarButtonItem setStyle not working

我在UIBarButtonItem中有一個UIToolBar 我已經像這樣設置了代碼:

UIBarButtonItem *barbutton=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(actionSheet:)];
[barbutton setStyle:UIBarButtonItemStyleBordered];
[toolBar setItems:[NSArray arrayWithObjects: [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], barButton, nil]] ;
[toolBar setClipsToBounds:YES];

我希望barButton帶有邊框顯示,但是只會顯示內置的動作圖標。 知道我可能會缺少什么嗎?

在搜索此問題時,我發現僅當使用initWithImage初始化UIBarButtonItem時, UIBarButtonItemStyleBordered應用所需的UIBarButtonItem

因此,也許您可​​以獲得“操作”按鈕的圖像並嘗試

UIBarButtonItem *barbutton = [[UIBarButtonItem alloc] initWithImage:@"action.png" style:UIBarButtonItemStyleBordered target:nil action:nil];
[barbutton setStyle:UIBarButtonItemStyleBordered];

告訴我這是否適合您。 干杯!


編輯

經過測試您自己的代碼,對我來說似乎工作正常。

 [barbutton setStyle:UIBarButtonItemStyleBordered]; 

會像這樣做出動作

在此處輸入圖片說明

在評論上面的行時,我得到一個像這樣的按鈕

在此處輸入圖片說明

那不是你想要的嗎?

在iOS 6中,您可以使用UIBarButtonItem類的新方法:

- (void)setBackgroundImage:(UIImage *)backgroundImage
              forState:(UIControlState)state
                 style:(UIBarButtonItemStyle)style
            barMetrics:(UIBarMetrics)barMetrics

它為指定的狀態,樣式和指標設置背景圖像。 [Apple文檔] [1]中提供了更多詳細信息。

希望它將對您有所幫助。

針對iOS 6問題使用以下代碼。 在IOS 7上也可以。

UIButton* btton = [UIButton buttonWithType:UIButtonTypeCustom];
[btton setFrame:CGRectMake(0, 0, 30, 30)];
[btton addTarget:self action:@selector(actionMethod) forControlEvents:UIControlEventTouchUpInside];
[btton setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];

UIBarButtonItem *rightButtonItem  = [[UIBarButtonItem alloc] initWithCustomView:btton];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM