UI第十天 UITableView 編輯

2021-07-07 09:57:02 字數 2920 閱讀 5618

⼀、tableview編輯

編輯步驟:1.

開啟tableviwe

編輯狀態

2.允許那個分割槽的那行

是可以編輯的

(預設是都能編輯)3.

指定可以編輯樣式(刪除

or 新增)4.

完成編輯

完成編輯步驟:1.

運算元據源陣列(新增

或刪除)

2.重新整理

ui介面

-(void

)edit:(

uibarbuttonitem

*)bar

else

}// 2.

允許編輯

-(bool

)tableview:(

uitableview

*)tableview caneditrowatindexpath:(

nsindexpath

*)indexpath

// 3.

指定編輯的樣式

-(uitableviewcelleditingstyle

)tableview:(

uitableview

*)tableview editingstyleforrowatindexpath:(

nsindexpath

*)indexpath

else

if([arr[indexpath.

row]

isequaltostring:@"

新增"]) return

uitableviewcelleditingstyledelete;}

// 提交編輯

// 根據編輯的樣式和索引去完成編輯

-(void

)tableview:(

uitableview

*)tableview commiteditingstyle:(

uitableviewcelleditingstyle

)editingstyle forrowatindexpath:(

nsindexpath

*)indexpath

else

}else

else

}//

重新整理頁面

// 整體重新整理

(uitableview)

重新走一邊資料原**方法達到重新整理效果

//    [tableview reloaddata];}

// 刪行

if(arr.

count

== 1)

[nsindexset

indexsetwithindex

:indexpath.

section

] //要刪第幾行

⼆、tableview移動

/*1.

開啟編輯狀態

2.允許那個分割槽移動

3.完成移動

1.運算元據願陣列

2.完成重新整理 */

-(bool

)tableview:(

uitableview

*)tableview canmoverowatindexpath:(

nsindexpath

*)indexpath

-(void

)tableview:(

uitableview

*)tableview moverowatindexpath:(

nsindexpath

*)sourceindexpath toindexpath:(

nsindexpath

*)destinationindexpath

else

}else}//

限制跨區移動

- (nsindexpath

*)tableview:(

uitableview

*)tableview targetindexpathformovefromrowatindexpath:(

nsindexpath

*)sourceindexpath toproposedindexpath:(

nsindexpath

*)proposeddestinationindexpath

else}

foodmodel

*model = [

self

.dataarray

[fromindexpath.

row]

retain

];// 

刪除資料

// 

我再陣列中刪除乙個物件

相當於給該物件傳送乙個

release

訊息// 

如果這個物件

只存在陣列中

, 那麼刪除了

就相當於釋放了

// 

我上面定義的指標

就相當於

指向了乙個已經被釋放的空間

// 

有retain

就要release

使用完後就釋放了

[model release];

三、uitableviewcontroller

uitableviewcontroller繼承⾃uiviewcontroller,⾃帶⼀個tableview

self.view不是uiview⽽是uitableview

datasource和delegate預設都是self(uitableviewcontroller)

開發中只需要建⽴uitableviewcontroller⼦類

總結⽆論編輯還是移動,都先讓tableview進⼊編輯狀態。

編輯結束或者移動結束,要先修改陣列或字典中的資料,在更改 ui。

uitableviewcontroller是封裝好了各種delegate和datasource,能 提⾼我們開發速度。

實習第十天

今天電梯有點慢,等得我半小時才到公司。今天弄資料庫介面工具的時候,被松哥按在地上摩擦了。今天加班,在下班的時候,久久等不到電梯,想起了 上有個應該需要修改,然後回公司修改,改了半天,發現還是原來的好,於是恢復原樣,我就下班了,有點搞笑。這段時間上火非常嚴重,整個人的狀態都不好,做事情也沒精神。面對各...

學習第十天

一 介面 jdk1.8及之後新增了2中可以定義存在方法體的方法 預設方法 default關鍵字修飾的方法 使用 通過實現類物件使用 靜態方法 使用 通過介面名去呼叫 二 單例模式 保證類只能存在乙個例項 餓漢式 先建立物件,然後需要的人要這個物件,保證永遠使用的都是這個建立好的物件 執行緒安全的,效...

前端第十天

function 1000,swing fn 小公尺輪播圖 設定5個div 通過給乙個類名定義屬性達到動畫效果,有左右點選事件及索引決定將類名新增給誰,且在索引達到極限時,重新將索引賦值,且同時將其他兄弟div移除類名,通過設定z index達到最上面為顯示的div 小公尺 定義建立列表函式 引數為...