我知道使用setEditing:
來啓用UITableView的編輯模式。如何禁用UITableView中特定行的刪除操作?
但我更喜歡禁用某些行的操作(啓用其他行)。
可能嗎?
感謝,
InterDev中
我知道使用setEditing:
來啓用UITableView的編輯模式。如何禁用UITableView中特定行的刪除操作?
但我更喜歡禁用某些行的操作(啓用其他行)。
可能嗎?
感謝,
InterDev中
實現數據源the -tableView:canEditRowAtIndexPath:
method。對於這些行,返回NO
。
使用canEditRowAtIndexPath將不允許該行與分組樣式中的其他單元格對齊。這看起來很糟糕。
我用UITableViewCellEditingStyleNone
,對於您不希望顯示的編輯控件(減/加號按鈕)的行,完全把這個在您的
(UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{}
這篇文章概括起來講, Is there any way to hide "-" (Delete) button while editing UITableView
如果你不想閱讀帖子的要點是你不想刪除,但要允許招行的行:設置編輯樣式行UITableViewCellEditingStyleNone
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{
return UITableViewCellEditingStyleNone;
}
根據你的問題,我知道你只想隱藏刪除按鈕不會出現在第一行。請將表格編輯設置爲是,並添加以下代碼
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.row==0)
{
return NO;
}
return YES;
}
這個工程,但也會禁用移動行。如果要允許單元格移動,並禁用@Youyou提供的禁用刪除按鈕解決方案,並且AlexC的http://support.microsoft.com/kb/2281394/uitableview-editable-rearrangeable-without-cells-beeing-deletable/2281456#2281456更好的選擇。 – CuriousDev 2016-11-27 07:22:40
謝謝。但我希望某些行(可以移動的所有行)可以移動而不是刪除(某些行被禁用了刪除功能,其他行被啓用),這可能嗎? – arachide 2010-06-07 08:23:02
@user:使用'-tableView:canMoveRowAtIndexPath:'來移動。 – kennytm 2010-06-07 08:46:07
謝謝。我用 - (BOOL)tableView:(UITableView *)tableview canMoveRowAtIndexPath :(NSIndexPath *)indexPath { \t \t return YES; \t } - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath; { \t NSInteger row = [indexPath row]; \t int vv = [[myArray objectAtIndex:row] isEditable];; \t if(!vv) \t { \t return NO; \t} \t其他 \t { \t \t返回YES; \t \t \t} } 但它似乎不可能同時設置單元格「啓用移動」和「禁用刪除」。 – arachide 2010-06-09 00:01:04