Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UITableview编辑模式下不显示左删除图标_Iphone_Uitableview_Swipe - Fatal编程技术网

Iphone UITableview编辑模式下不显示左删除图标

Iphone UITableview编辑模式下不显示左删除图标,iphone,uitableview,swipe,Iphone,Uitableview,Swipe,我有一个基于核心数据/uitableview的应用程序。实际上,到目前为止,80%的代码相当于苹果示例应用程序CoreDataRecipes。我的问题是,当我进入编辑模式(按下编辑按钮)时,行的左侧没有“删除徽章”。保险杠 CoreDataRecipes的代码差异: 我有一个定制的UITabelview手机 一个nib文件,而不仅仅是代码 我的Tableview是我的类视图中的一个出口。所以我的班级 RecipeListTableViewController是一个 带有Tableview委托而

我有一个基于核心数据/uitableview的应用程序。实际上,到目前为止,80%的代码相当于苹果示例应用程序CoreDataRecipes。我的问题是,当我进入编辑模式(按下编辑按钮)时,行的左侧没有“删除徽章”。保险杠

CoreDataRecipes的代码差异:

  • 我有一个定制的UITabelview手机 一个nib文件,而不仅仅是代码
  • 我的Tableview是我的类视图中的一个出口。所以我的班级 RecipeListTableViewController是一个 带有Tableview委托而不是UITableViewController的UIViewController
  • 我尝试的是:

    • Tableview工作正常。没有链接或委派问题
    • 我检查了一下桌子是否真的 进入编辑模式。是的。你 可以看到,因为“添加”按钮 它是残疾的
    • 我检查了一下编辑风格是否合适。默认情况下应该是这样,但为了确保我添加了:

      (UITableViewCellEditingStyle)tableView:(UITableView*)tableVieweditingStyleForRowAtIndexPath(NSIndexPath*)indexPath{return UITableViewCellEditingStyleDelete;}

    • 我检查了删除图标是否在我的cellview后面。没有。我现在认为移动到右边的细胞行为是由iOS处理的

    • 当我滑动单元格时,会出现右侧的删除按钮,并正常工作
    • 我试图通过布局子视图来建立我自己的行为。进入编辑模式时未发生任何更改。但是,当我滑动时,现在我在一行中看到我的子视图:


    有人有什么想法吗?一定很简单。

    我想你还没有加上这一行
    tableView.editing=YES
    单击编辑按钮


    尝试设置它

    我想你还没有添加这一行
    tableView.editing=YES
    单击编辑按钮


    尝试设置它

    由于您的是UIViewController,因此tableview无法获得setEditing调用。只需添加:

    - (void)setEditing:(BOOL)editing animated:(BOOL)animated {
        [super setEditing:editing animated:animated];
        [self.tv setEditing:editing animated:YES];
    }
    

    由于您的是UIViewController,因此tableview不会得到setEditing调用。只需添加:

    - (void)setEditing:(BOOL)editing animated:(BOOL)animated {
        [super setEditing:editing animated:animated];
        [self.tv setEditing:editing animated:YES];
    }
    
    确保

    - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
    {
    
        return YES;
    }
    
    如果未设置为返回“是”,则不会启用徽章。默认设置为返回NO

    请确保

    - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
    {
    
        return YES;
    }
    

    如果未设置为返回“是”,则不会启用徽章。默认设置为返回NO

    请确保您已经设置了outlet/delegate/datasource 然后这些:

    -(void)editButtonTapped
    {
        [self.tableView setEditing:YES animated:YES];
    }
    
    
    
    -(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return YES;
    }
    
    -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return UITableViewCellEditingStyleDelete;
    }
    

    确保您已经设置了outlet/delegate/datasource 然后这些:

    -(void)editButtonTapped
    {
        [self.tableView setEditing:YES animated:YES];
    }
    
    
    
    -(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return YES;
    }
    
    -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return UITableViewCellEditingStyleDelete;
    }
    

    应用程序因以下原因崩溃:由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“+entityForName:找不到实体名称的NSManagedObjectModel。。。但我认为编辑按钮已经起作用了。我使用self.navigationItem.leftBarButtonItem=self.editButtonItem;嘿,伙计..你正在偏离轨道..你发布的问题与Coredata没有任何关系。应用程序崩溃原因:由于未捕获的异常“NSInternalInconsistencyException”,终止应用程序,原因:“+entityForName:找不到实体名称的NSManagedObjectModel。。。但我认为编辑按钮已经起作用了。我使用self.navigationItem.leftBarButtonItem=self.editButtonItem;嘿,伙计..你正在偏离正轨..你发布的问题与Coredata没有任何关系。在swift中默认为true在swift中默认为true