Oli*_*ver 3 iphone label edit uitableview
我的navigationBar中有一个常用的editButtonItem(由系统创建),我想更改它的名字.我在TableViewController中写了这行:
- (void)viewDidLoad
{
[super viewDidLoad];
[Some code...]
self.navigationItem.rightBarButtonItem = self.editButtonItem;
self.navigationItem.rightBarButtonItem.title = @"New name";
}
Run Code Online (Sandbox Code Playgroud)
这样可行,但在进入和退出编辑模式时,将恢复其系统名称.我试图再次强迫它didEndEditingRowAtIndexPath
,但没有成功......
如何修复此自定义名称而无需在代码中自己创建按钮?
pix*_*eak 18
@ Bojan的方法很接近,但效率非常低,因为每一行都会调用它.只需在开头更改标题,viewDidLoad
另外执行以下操作:
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
// Make sure you call super first
[super setEditing:editing animated:animated];
if (editing)
{
self.editButtonItem.title = NSLocalizedString(@"Cancel", @"Cancel");
}
else
{
self.editButtonItem.title = NSLocalizedString(@"Edit", @"Edit");
}
}
Run Code Online (Sandbox Code Playgroud)
如果您不喜欢现有的编辑按钮项,请创建自己的编辑按钮项.
在标题中声明一个ivar editItem,然后像这样创建项目:
editItem = [[UIBarButtonItem alloc] initWithTitle:@"New Name" style:UIBarButtonItemStyleBordered target:self action:@selector(toggleEditing)]
Run Code Online (Sandbox Code Playgroud)
in -toggleEditing,调用
[self setEditing:!self.editing animated:YES]
Run Code Online (Sandbox Code Playgroud)
并且还更新按钮的标题(以及可选的外观)以反映编辑状态.
归档时间: |
|
查看次数: |
6318 次 |
最近记录: |