我以编程方式创建了一个UILabel并触发了一个我想要隐藏相同标签的按钮.这是我的代码:
UILabel *nameLabel = [[UILabel alloc] initWithFrame:CGRectMake(0,100,320,100)]; nameLabel.text = @"TEXT"; nameLabel.backgroundColor = [UIColor greenColor]; nameLabel.numberOfLines = 5; nameLabel.font = [UIFont boldSystemFontOfSize:12]; [self.view addSubview:nameLabel]; self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Hide" style:UIBarButtonItemStyleBordered target:self action:@selector(back)]; - (IBAction)back{ self.navigationItem.rightBarButtonItem=nil; [nameLabel setHidden: YES]; not working nameLabel.hidden = YES; not working }
我错过了什么吗?
解决方法
这也是另一种做法
UILabel *nameLabel = [[UILabel alloc] initWithFrame:CGRectMake(0,100)]; nameLabel.text = @"TEXT"; nameLabel.tag = 1001; nameLabel.backgroundColor = [UIColor greenColor]; nameLabel.numberOfLines = 5; nameLabel.font = [UIFont boldSystemFontOfSize:12]; [self.view addSubview:nameLabel]; self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Hide" style:UIBarButtonItemStyleBordered target:self action:@selector(back)]; - (IBAction)back{ self.navigationItem.rightBarButtonItem=nil; UILabel *tempLabel = (UILabel *)[self.view viewWithTag:1001]; [tempLabel setHidden: YES]; tempLabel.hidden = YES; }