我使用以下代码创建UIBarButtonItem:
UIBarButtonItem* searchBarButton = [[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"search_picto"] style:UIBarButtonItemStyleBordered target:self action:@selector(actionSearch:)] autorelease];
searchBarButton.tintColor = [UIColor colorWithRed:0.27 green:0.60 blue:0.20 alpha:1.00];
我将这个和另一个按钮添加到UIToolbar,不确定它是否相关。 这很好用,给了我我想要的外观:
问题是iOS 4(我必须支持)我无法设置tintColor。无法识别的选择器。如何为iOS 4创建这样的按钮?我需要能够设置tintColor并具有UIBarButtonItemStyleBordered。
感谢您的帮助。
我让它像这样工作:
UISegmentedControl* searchButton = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"", nil]];
[searchButton setImage:[UIImage imageNamed:@"search_picto"] forSegmentAtIndex:0];
searchButton.momentary = YES;
searchButton.segmentedControlStyle = UISegmentedControlStyleBar;
searchButton.tintColor = [DELEGATE.config getColor:IFXShopConfigScopeShop name:@"navigationTint"];
[searchButton addTarget:self action:@selector(actionSearch:) forControlEvents:UIControlEventValueChanged];
您必须使用一个空的NSString对其进行初始化,否则无法设置图像。此外,addTarget必须使用UIControlEventValueChanged
答案 0 :(得分:2)
tintColor
,对于iOS4 here您有解决方案
答案 1 :(得分:1)
您需要创建一个UIButton
并自行绘制按钮或使用此设置背景图片并使用自定义视图初始化UIBarButtonItem
(UIButton
)。
P.S。从iOS6的发布开始,你无法再编译到armv6了,你可以支持的最低版本是4.3,根据我的说法不值得......