在ViewController中启用编辑模式

时间:2013-05-07 18:55:29

标签: iphone ios uitableview storyboard xcode4.5

我是iOS开发的新手,我试图在视图中显示用户个人资料,同时我想让用户通过点击UINavigationBar上的“编辑”按钮来编辑他的个人资料Apple网站上显示:Enabling Edit Mode in a View Controller

我试图找到解释这一切的教程,但我没有做任何事情。有人可以通过给我一个教程链接或示例代码来帮助我吗?

PS:我正在使用故事板。

非常感谢!

2 个答案:

答案 0 :(得分:1)

Herehere是UITableview

的几个示例

概念是一样的。添加UIBarButtonItem并更改tableView的当前模式和buttonItem的状态(文本),以显示编辑破折号和其他内容(如果您选择)。

这是一个简单的编辑模式按钮,用于将tableView发送到编辑模式以便于删除。你也可以

- (IBAction)editPressed:(id)sender
{
    // If the tableView is editing, change the barButton title to Edit and change the style
    if (_theTableView.isEditing) {
        UIBarButtonItem *newButton = [[UIBarButtonItem alloc]initWithTitle:@"Edit" style:UIBarButtonSystemItemDone target:self action:@selector(editPressed:)];
        self.navigationItem.rightBarButtonItem = newButton;
        _buttonEdit = newButton;
        [_theTableView setEditing:NO animated:YES];
    }
    // Else change it to Done style
    else {
        UIBarButtonItem *newButton = [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonSystemItemEdit target:self action:@selector(editPressed:)];
        self.navigationItem.rightBarButtonItem = newButton;
        _buttonEdit = newButton;
        [_theTableView setEditing:YES animated:YES];
    }
}


-(void)setEditing:(BOOL)editing animated:(BOOL)animated
{ 
    [super setEditing:editing animated:animated];

    // You could do other things in here based on whether editing is true or not
}

答案 1 :(得分:1)

您可以在viewDidLoad中为navigationItem barbutton设置默认编辑按钮,如下所示。

-(void)viewDidLoad
{
      [super viewDidLoad];
      self.navigationItem.rightBarButtonItem = self.editButtonItem;
}

在苹果文件中给出

  

editButtonItem - 返回一个条形按钮项,用于在“编辑”和“完成”之间切换其标题和关联状态。默认按钮操作调用setEditing:animated:method。

在视图控制器中覆盖setEditing:animated:如下所示。

-(void)setEditing:(BOOL)editing animated:(BOOL)animated
{
      [super setEditing:editing animated:animated];
}

您可以使用bool变量编辑来满足您的要求。