您好,登錄后才能下訂單哦!
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cellView = [tableView cellForRowAtIndexPath:indexPath]; if (cellView.accessoryType == UITableViewCellAccessoryNone) { cellView.accessoryType=UITableViewCellAccessoryCheckmark; } else { cellView.accessoryType = UITableViewCellAccessoryNone; [tableView deselectRowAtIndexPath:indexPath animated:YES]; } }
//返回YES,表示支持單元格的移動 -(BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { return YES; }
//單元格返回的編輯風(fēng)格,包括刪除 添加 和 默認 和不可編輯三種風(fēng)格 -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleInsert; }三種風(fēng)格的分別是
UITableViewCellEditingStyleDelete UITableViewCellEditingStyleInsert
UITableViewCellEditingStyleNone
-(void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath { // 需要的移動行 NSInteger fromRow = [sourceIndexPath row]; // 獲取移動某處的位置 NSInteger toRow = [destinationIndexPath row]; // 從數(shù)組中讀取需要移動行的數(shù)據(jù) id object = [self.listData objectAtIndex:fromRow]; // 在數(shù)組中移動需要移動的行的數(shù)據(jù) [self.listData removeObjectAtIndex:fromRow]; // 把需要移動的單元格數(shù)據(jù)在數(shù)組中,移動到想要移動的數(shù)據(jù)前面 [self.listData insertObject:object atIndex:toRow]; }
//單元格返回的編輯風(fēng)格,包括刪除 添加 和 默認 和不可編輯三種風(fēng)格 -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleDelete; }
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle==UITableViewCellEditingStyleDelete) { // 獲取選中刪除行索引值 NSInteger row = [indexPath row]; // 通過獲取的索引值刪除數(shù)組中的值 [self.listData removeObjectAtIndex:row]; // 刪除單元格的某一行時,在用動畫效果實現(xiàn)刪除過程 [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic]; } }
//單元格返回的編輯風(fēng)格,包括刪除 添加 和 默認 和不可編輯三種風(fēng)格 -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleInsert; }
#import <UIKit/UIKit.h> @interface STViewController : UIViewController<UITableViewDataSource,UITableViewDelegate> { NSInteger i; } @property(strong,nonatomic) NSMutableArray *listData; @property(strong,nonatomic)UITableView *tableView; @property(strong,nonatomic)UITableViewCell *tableViewCell; @end
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle==UITableViewCellEditingStyleDelete) { // 獲取選中刪除行索引值 NSInteger row = [indexPath row]; // 通過獲取的索引值刪除數(shù)組中的值 [self.listData removeObjectAtIndex:row]; // 刪除單元格的某一行時,在用動畫效果實現(xiàn)刪除過程 [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic]; } if(editingStyle==UITableViewCellEditingStyleInsert) { i=i+1; NSInteger row = [indexPath row]; NSArray *insertIndexPath = [NSArray arrayWithObjects:indexPath, nil]; NSString *mes = [NSString stringWithFormat:@"添加的第%d行",i]; // 添加單元行的設(shè)置的標(biāo)題 [self.listData insertObject:mes atIndex:row]; [tableView insertRowsAtIndexPaths:insertIndexPath withRowAnimation:UITableViewRowAnimationRight]; } }
UITableViewRowAnimationAutomatic UITableViewRowAnimationTop
UITableViewRowAnimationBottom UITableViewRowAnimationLeft
UITableViewRowAnimationRight UITableViewRowAnimationMiddle
UITableViewRowAnimationFade UITableViewRowAnimationNone
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。