2011-10-25 166 views

回答

2

只需添加UITextFieldUITableViewCell這樣的..

UITextField* textField = [[UITextField alloc] initWithFrame:frame]; 

[cell addSubview:textField]; 
+1

您不應將子視圖直接添加到單元格,而是添加到其contentView。 Apple文檔:「UITableViewCell對象的內容視圖是單元格顯示的內容的默認超級視圖,如果您想通過簡單地添加其他視圖來自定義單元格,則應將它們添加到內容視圖中,以便它們按照單元格轉換爲編輯模式並退出編輯模式。「 – jbat100

+0

當我想恢復做某些事情的價值時,我如何在代碼中使用它們? –

+0

@ziadtamim:爲指向文本字段的指針創建一個實例變量或屬性,並在創建該字段後將該指針存儲在那裏。可選地,使該屬性成爲一個出口,並在一個筆尖(而不是在代碼中)中創建該字段並將該出口連接到它。 –

1

您可以創建內部的一些UILabels和一些的UITextField一個UIView。並與圖書館和財產cornerRadious的視圖層cand做圓角邊框

2

您可以在界面生成器中創建此。將UITableViewCell拖入工作區,放入UILabel或UITextField。如果您願意,您可以自定義外觀。

現在在你的視圖控制器中,爲這個UITableViewCell聲明一個IBOutlet。當程序調用cellForRowAtIndexPath時,可以簡單地使單元等於該變量。

另一種方法是以編程方式在單元格的contentview中添加UITextField。

3

您可以將其添加到單元格內容查看這樣

UITextField *textField = [[UITextField alloc] initWithFrame:rect]; 
textField.tag = textTag; 

//Add textfield to contentView 
[cell.contentView addSubview:textField]; 

記住添加標籤,因爲當你重複使用單元格中的內容查看未清除,所以你只要使用相同的UITextView後喜歡把它這樣的:

UITextField *textField = (UITextField *)[cell.contentView viewWithTag:textTag]; 

此外,我注意到您創建它的第一次,和你的文本字段添加到內容查看,然後修改mainLabel,即子視圖會頂上去,以便恢復細胞沒有這樣做的:

[cell.contentView bringSubviewToFront:textField]; 
相關問題