0

UITableView我在使用editingStyleForRowAtIndexPath返回UITableViewCellEditingStyleInsert或的编辑模式下做事UITableViewCellEditingStyleDelete

它工作得很好,但是我尝试了一件事没有成功。我使用按位或运算符尝试了以下操作:

return UITableViewCellEditingStyleInsert|UITableViewCellEditingStyleDelete;

希望能回来UITableViewCellEditingStyleInsertUITableViewCellEditingStyleDelete同时也能回来。

我不明白为什么不可能。我的意思是我希望能够删除该单元格,并且我还希望能够在之前插入另一个单元格。但实际情况如何?我错过了什么吗?

4

1 回答 1

0

这是设计使然,一个单元格只能有一种编辑样式。此外,控件放置在同一位置。还有枚举的定义方式:

typedef enum {
    UITableViewCellEditingStyleNone,
    UITableViewCellEditingStyleDelete,
    UITableViewCellEditingStyleInsert
} UITableViewCellEditingStyle;

它不是为 ORing 设计的,就像某些选项枚举一样,例如UIViewAutoResizingMaskfrom UIView

enum {
    UIViewAutoresizingNone                 = 0,
    UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,
    UIViewAutoresizingFlexibleWidth        = 1 << 1,
    UIViewAutoresizingFlexibleRightMargin  = 1 << 2,
    UIViewAutoresizingFlexibleTopMargin    = 1 << 3,
    UIViewAutoresizingFlexibleHeight       = 1 << 4,
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};
typedef NSUInteger UIViewAutoresizing;
于 2013-01-15T14:29:31.900 回答