UITableView 表視圖編輯,uitableview視圖

來源:互聯網
上載者:User

UITableView 表視圖編輯,uitableview視圖
UITableViewController(表視圖控制器)繼承自UIViewController,內建一個tableViewself.view不是UIView而是UITableViewdatasource和delegate你預設都是self(UITableViewController)開發過程中只需建立UITableViewController子類 tableView編輯 tableView編輯:cell的添加、刪除使用的情境:刪除一個下載好的視頻,刪除連絡人。插入一條新的聊天記錄等 編輯的步驟 1、self讓tableView處於編輯狀態 
    //editButtonItem對應的相應方法內部會根據點擊按鈕的狀態通過setEditing:animtated:方法來控製表視圖是否進入編輯狀態     self.navigationItem.rightBarButtonItem = self.editButtonItem;2、指定tableView那些行可以編輯

 

 3、指定tableView編輯樣式(添加、刪除)
 4、編輯完成(先操作資料源,在修改UI)
// Override to support editing the table view.- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {    if (editingStyle == UITableViewCellEditingStyleDelete) {        // Delete the row from the data source//        1、應當先刪除對應行的資料//        2、再將對應行的儲存格從表視圖中刪除        [self.datasource removeObjectAtIndex:indexPath.row];        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationMiddle];    } else if (editingStyle == UITableViewCellEditingStyleInsert) {        // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view//        1、現在數組中插入對應的對象//        2、建立對應對象的indexPath//        3、根據indexPath在表視圖中的位置插入對應行        [self.datasource addObject:@"新插入的資料"];        NSIndexPath *insertPath = [NSIndexPath indexPathForRow:self.datasource.count - 1 inSection:0];        [tableView insertRowsAtIndexPaths:@[insertPath] withRowAnimation:UITableViewRowAnimationMiddle];    }   }

當表格被拖拽後會相應此方法,

 

 

 

當表格處於編輯狀態時,可以通過以下方法設定相應的表格是否與許被編輯

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.