【问题标题】:Objective C UIBarButtonItem as toggle button for edit and saveObjective C UIBarButtonItem 作为用于编辑和保存的切换按钮
【发布时间】:2015-07-14 07:02:43
【问题描述】:

我已经编写了一个代码来使用 customview 放置一个右栏按钮项目。选择编辑时它会更改为保存选项。现在我选择保存它会保存值。如果我再次尝试选择编辑操作不触发。代码我写在下面,

item = [[UINavigationItem alloc]init];    
btnn = [UIButton buttonWithType:UIButtonTypeCustom];
[btnn setFrame:CGRectMake(0, 0, 40, 40)];
btnn.layer.masksToBounds = NO;
btnn.layer.cornerRadius = 8.0;
[btnn addTarget:self action:@selector(rightBarButtonCustomPressed:) forControlEvents:UIControlEventTouchUpInside];
[btnn setImage:[UIImage imageNamed:@"edit"] forState:UIControlStateNormal];
UIBarButtonItem* rightBtn = [[UIBarButtonItem alloc] initWithCustomView:btnn];   
item.rightBarButtonItem = rightBtn;
self.navigationBar.items = @[item];

-(IBAction)rightBarButtonCustomPressed:(UIBarButtonItem*)btn {

item = [[UINavigationItem alloc]init];
btnn = [UIButton buttonWithType:UIButtonTypeSystem];
[btnn setFrame:CGRectMake(0, 0, 40, 40)];
btnn.layer.masksToBounds = NO;
btnn.layer.cornerRadius = 8.0;
[btnn addTarget:self action:@selector(saveBtnClicked:) forControlEvents:UIControlEventTouchUpInside];
[btnn setTitle:@"save" forState:UIControlStateNormal];
UIBarButtonItem* rightBtn = [[UIBarButtonItem alloc] initWithCustomView:btnn];
item.rightBarButtonItem = rightBtn;       
self.navigationBar.items = @[item];

[self.firstNameText setEnabled:YES];
[self.lastNameText setEnabled:YES];
[self.dateOfBirthTxt setEnabled:YES];
[self.contactNumberlbl setEnabled:YES];

}

-(IBAction)saveBtnClicked:(UIBarButtonItem*)btn {

[self.firstNameText setEnabled:NO];
[self.lastNameText setEnabled:NO];
[self.dateOfBirthTxt setEnabled:NO];
[self.contactNumberlbl setEnabled:NO];
item = [[UINavigationItem alloc]init];
btnn = [UIButton buttonWithType:UIButtonTypeCustom];
[btnn setFrame:CGRectMake(0, 0, 40, 40)];
btnn.layer.masksToBounds = NO;
btnn.layer.cornerRadius = 8.0;
[btnn addTarget:self action:@selector(rightBarButtonCustomPressed:) forControlEvents:UIControlEventTouchUpInside];
[btnn setImage:[UIImage imageNamed:@"edit"] forState:UIControlStateNormal];
UIBarButtonItem* rightBtn = [[UIBarButtonItem alloc] initWithCustomView:btnn];
item.rightBarButtonItem = rightBtn;   
self.navigationBar.items = @[item];

我需要实现 barbuttonitem 作为保存和编辑选项的切换。请任何人帮我解决这个问题。谢谢

【问题讨论】:

    标签: objective-c uinavigationbar uibarbuttonitem uinavigationitem ios8.3


    【解决方案1】:

    代替 alloc init evry time ,你为什么不尝试改变 buttonTitle 然后你可以在它的基础上执行操作

    【讨论】:

      猜你喜欢
      • 2012-07-15
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-09
      • 2022-11-26
      相关资源
      最近更新 更多