我希望这是一个简单的问题,我有一个UIBarButtonItem,我使用UILabel作为自定义视图进行初始化,按钮位于工具栏内。 我想要做的是能够从UIBarButtonItem内的标签更改文本,这是我的代码:
NSDate *lastUpdateDate = [AWSyncEntity getLastUpdatedDateByEntityName:@"Patient" inManagedObjectContext:self.managedObjectContext];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];//liberar
[dateFormat setDateFormat:@"MM/dd/yyyy hh:mm a"];
UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 180, 44.01)]; //liberar
myLabel.font = [UIFont boldSystemFontOfSize:10];
myLabel.textColor = [UIColor whiteColor];
myLabel.backgroundColor = [UIColor clearColor];
myLabel.text = [NSString stringWithFormat:@"Actualizado: %@", [dateFormat stringFromDate:lastUpdateDate]];
UIBarButtonItem *btn2 = [[UIBarButtonItem alloc] initWithCustomView:myLabel]; //liberar
UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; //liberar
self.toolbarItems = [NSArray arrayWithObjects:flexibleSpace,btn2, flexibleSpace, nil];
[self.navigationController setToolbarHidden:NO animated:YES];
UIBarButtonItem *mybtn = (UIBarButtonItem *)[self.toolbarItems objectAtIndex:2];
//I was thinking this would be possible...
//UILabel *mylbl = (UILabel *) [mybtn view];
[flexibleSpace release];
[btn2 release];
[myLabel release];
[dateFormat release];
我不知道如何再次获得对按钮内部视图的引用,任何线索? 我正在考虑做这样的事情:(但它不起作用)。
//I was thinking this would be possible...
//UILabel *mylbl = (UILabel *) [mybtn view];
答案 0 :(得分:0)
标签是条形按钮的 customView ,
UILabel *mylbl = (UILabel *)[mybtn customView];
答案 1 :(得分:0)
UILabel * myLbl =(UILabel *)[mybtn customView];
应该这样做,但我还没有测试过。