iOS學習30之UITableView編輯

2022-03-30 15:31:58 字數 2894 閱讀 7663

① 第一步 : 讓 tableview 處於編輯狀態(在按鈕點選事件方法中) 

1

//優化寫法2//

不帶動畫

3 _rootview.tableview.editing = !_rootview.tableview.editing;4//

帶動畫5 [_rootview.tableview setediting:!_rootview.tableview.editing animated:yes];

② 協議設定

第二步 : 確定cell是否處於編輯狀態(uitableviewdatasource協議的方法) 

- (bool)tableview:(uitableview *)tableview caneditrowatindexpath:(nsindexpath *)indexpath

return

no;}

第三步 : 設定cell的編輯樣式 (刪除 , 新增)

1 - (uitableviewcelleditingstyle)tableview:(uitableview *)tableview editingstyleforrowatindexpath:(nsindexpath *)indexpath

2

第四步 : 編輯狀態進行新增

1 - (void)tableview:(uitableview *)tableview commiteditingstyle:(uitableviewcelleditingstyle)editingstyle forrowatindexpath:(nsindexpath *)indexpath

2

第三步:

1 - (uitableviewcelleditingstyle)tableview:(uitableview *)tableview editingstyleforrowatindexpath:(nsindexpath *)indexpath

2

第四步:

1 - (void)tableview:(uitableview *)tableview commiteditingstyle:(uitableviewcelleditingstyle)editingstyle forrowatindexpath:(nsindexpath *)indexpath

2

第三步:

1 - (uitableviewcelleditingstyle)tableview:(uitableview *)tableview editingstyleforrowatindexpath:(nsindexpath *)indexpath

2

第四步:

1 - (void)tableview:(uitableview *)tableview commiteditingstyle:(uitableviewcelleditingstyle)editingstyle forrowatindexpath:(nsindexpath *)indexpath

2

第三步 : 設定乙個 uitableviewcelleditingstyle 型別的 屬性(style) 用於儲存 新增 和 刪除 的編輯的樣式, 在 新增 和 刪除 對應的點選事件方法中賦值, 注:按鈕的功能樣式需要在點選事件最上面實現, 否則會出現bug

- (uitableviewcelleditingstyle)tableview:(uitableview *)tableview editingstyleforrowatindexpath:(nsindexpath *)indexpath

第四步 :  

1 - (void)tableview:(uitableview *)tableview commiteditingstyle:(uitableviewcelleditingstyle)editingstyle forrowatindexpath:(nsindexpath *)indexpath

2 else

if (uitableviewcelleditingstyleinsert ==editingstyle)

9 }

① (在 tableview 處於編輯狀態下)實現協議: 告訴 tableview 是否能夠移動

- (bool)tableview:(uitableview *)tableview canmoverowatindexpath:(nsindexpath *)indexpath

② 移動

1 - (void)tableview:(uitableview *)tableview moverowatindexpath:(nsindexpath *)sourceindexpath toindexpath:(nsindexpath *)destinationindexpath

2

bug修正--- 防止跨分割槽移動

1 - (nsindexpath *)tableview:(uitableview *)tableview targetindexpathformovefromrowatindexpath:(nsindexpath *)sourceindexpath toproposedindexpath:(nsindexpath *)proposeddestinationindexpath

2 else

10 }

1> 概述

uitableviewcontroller 是繼承於 uiviewcontroller 中的乙個類,只不過比uiviewcontroller 中多了乙個屬性 tableview 。 即: uitableviewcontroller 是乙個自帶

table 的檢視控制器。

2> 注意事項

IOS 課程 UITable 學習 一

在xib上拖乙個uitableview 並把datasource,delegagte與files owner聯絡。1,介面實現協議 2,用windows 滑鼠左鍵檢視方法內容,在uitableviewdatasource找到必須實現的方法 nsinteger tableview uitablevie...

IOS學習之collectionView的使用

1 首次建立初始化時候肯定會遇到以下錯誤 uicollectionview must be initialized with a non nil layout parameter 解決辦法 使用乙個非空的layout初始化集合檢視,具體 源 wbsearchcontroller search wbs...

iOS學習之UIPickerView控制項的簡單使用

uipickerview控制項在給使用者選擇某些特定的資料時經常使用到,這裡演示乙個簡單的選擇資料,顯示在uitextfield輸入框裡,把uipickerview作為輸入view,用 作為選定資料的按鈕。和其他uitableview控制項相似,uipickerview也需要資料來源。我們要實現的效...