我用了ABAddressBookRef
获取信息,用的还不错,不过我想改变ABPeoplePickerNavigationController
的UINavigationBar
的颜色。能实现吗?怎么实现?感谢帮忙。
如何改变ABPeoplePickerNavigationController的UINavigationBar 颜色。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- g989_1314125 2012-10-15 08:07关注
先设置颜色:
ABPeoplePickerNavigationController *objPeoplePicker = [[ABPeoplePickerNavigationController alloc] init]; [objPeoplePicker setPeoplePickerDelegate:self]; objPeoplePicker.topViewController.navigationController.navigationBar.tintColor = [UIColor colorWithRed:0.294 green:0.278 blue:0.247 alpha:1.0]; [self presentModalViewController:objPeoplePicker animated:YES];
改变UISearchBar的颜色
if( picker.searchDisplayController == nil ) NSLog(@"searchDisplayController is nil"); if( picker.topViewController.searchDisplayController == nil ) NSLog(@"topViewController.searchDisplayController is nil"); static BOOL foundSearchBar = NO; - (void)findSearchBar:(UIView*)parent mark:(NSString*)mark { for( UIView* v in [parent subviews] ) { if( foundSearchBar ) return; NSLog(@"%@%@",mark,NSStringFromClass([v class])); if( [v isKindOfClass:[UISearchBar class]] ) { [(UISearchBar*)v setTintColor:[UIColor blackColor]]; foundSearchBar = YES; break; } [self findSearchBar:v mark:[mark stringByAppendingString:@"> "]]; } } - (void)pickPerson:(BOOL)animated { foundSearchBar = NO; ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init]; [[picker navigationBar] setTintColor:[UIColor blackColor]]; picker.peoplePickerDelegate = self; picker.displayedProperties = [NSArray arrayWithObjects: [NSNumber numberWithInt:kABPersonEmailProperty], nil]; [self presentModalViewController:picker animated:animated]; [picker release]; [self findSearchBar:[picker view] mark:@"> "]; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥50 汇编语言除法溢出问题
- ¥65 C++实现删除N个数据列表共有的元素
- ¥15 Visual Studio问题
- ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
- ¥20 求一个html代码,有偿
- ¥100 关于使用MATLAB中copularnd函数的问题
- ¥20 在虚拟机的pycharm上
- ¥15 jupyterthemes 设置完毕后没有效果
- ¥15 matlab图像高斯低通滤波
- ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗