2012-12-10 34 views
1

我正在設計一個可編輯的UITableViewCell*。在正常狀態下,我的單元格應該看起來像紅線上方的圖像部分。調整UIView大小以隱藏「剪切線」下的部分

Table cell

當用戶單擊[Edit...],讓用戶改變設置將顯示控件,以及[Edit...]按鈕上的文字會變成[Done]。點擊[Done]將隱藏紅線下方的部分,並將按鈕上的文本更改回[Edit...]

我想通過改變委託中的行的高度來實現這種效果。當單元格處於編輯模式時,它將返回完整的高度;當單元格未處於編輯模式時,將返回紅線上部的高度。不幸的是,當我這樣做時,編輯控件「上滑」,遮住了單元的其餘部分。我通過在編輯模式下使這些控件不可見來解決這個問題,但我認爲應該有更好的解決方案。

是否有我可以應用於控件的設置,以便讓我切斷底部,剪下紅線下方的內容?


*我使用Interface Builder來設計我的單元格,以防萬一它很重要。

+0

的訣竅是你設計尺寸變化或小區中您只需編程調整單元格高度?你是否可以修改單元格高度並將你的設置部分添加爲子視圖,當它進入編輯模式時它會被添加到單元格中,並在離開編輯模式時從單元格中移除? – propstm

+0

@propstm我正在'tableView:heightForRowAtIndexPath:'中以編程方式調整高度。製作子視圖的想法聽起來很有趣 - 即使它本身並沒有完成這個技巧,它會讓我通過在子視圖上設置「隱藏」標誌來隱藏所有控件。 – dasblinkenlight

+0

@AnoopVaidya你[從upvotes達到日常聲望上限,200點](http://meta.stackexchange.com/questions/8272/the-rep-cap-is-200-per-day-correct)。 – dasblinkenlight

回答

1

在您的廈門國際銀行 - 只要打開頂部的支柱

enter image description here

這是爲我工作。爲了使它順利地擴大和縮小,你需要用一個空beginUpdates/endUpdates呼叫

[tableView beginUpdates]; 
[tableView endUpdates];