if ([[[UIDevice currentDevice] systemVersion] intValue] >= 5) { //for ios5.*
UIBarButtonItem *rbtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSearch target:self action:@selector(search:)];
UIImage *rightBarBtn = [[UIImage imageNamed:@"barBtn"] resizableImageWithCapInsets:UIEdgeInsetsMake(0.0, 5.0, 0.0, 5.0)];
[rbtn setBackgroundImage:rightBarBtn forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
self.navigationItem.rightBarButtonItem = rbtn;
[rbtn release];
}
else { //for ios4.*
UIImage *searchImg = [UIImage imageNamed:@"searchImg"];
UIButton *searchBtn = [UIButton buttonWithType:UIButtonTypeCustom];
searchBtn.frame = CGRectMake(0, 0, 40, 30);
[searchBtn addTarget:self action:@selector(search:) forControlEvents:UIControlEventTouchUpInside];
[searchBtn setBackgroundImage:searchImg forState:UIControlStateNormal];
searchBtn.backgroundColor = [UIColor clearColor];
UIBarButtonItem *searchBarBtn = [[UIBarButtonItem alloc] initWithCustomView:searchBtn];
self.navigationItem.rightBarButtonItem = searchBarBtn;
[searchBarBtn release];
}兼容ios4及ios5的自定义navigationbar的rightBarButtonItem
最新推荐文章于 2025-11-23 10:23:09 发布
本文介绍了一种在iOS不同版本中实现自定义搜索按钮的方法。对于iOS 5及以上版本,使用UIBarButtonItem结合系统提供的搜索图标;对于iOS 4及以下版本,则通过UIButton手动创建并设置背景图片来模拟搜索按钮的行为。
2130

被折叠的 条评论
为什么被折叠?



