2013-02-05 94 views
0

是否可以通過UITableView中的某些單元格繪製具有不同寬度的線條?
像這樣:
table view
我使用的Xcode 4.6和目標是iOS5的+通過UITableView單元繪製線條

+0

你指的是文本上的刪除線嗎? – jakenberg

+0

@ jsksma2不,用自定義筆的線。完全像圖片 – Maysam

+0

更具體。當你說「自定義」時,是要求用戶從字面上畫出刪除線,還是隻想讓它出現? – jakenberg

回答

1

有關它如何工作的概念。當可重用的單元格內容更改時,您需要管理紅線。

CGSize size = [cell.textLabel.text sizeWithFont:cell.textLabel.font]; 
CGFloat y = cell.contentView.frame.size.height/2; 

UIView *line = [[UIView alloc] initWithFrame:CGRectMake(5,y,size.width, 3)]; 
line.backgroundColor = [UIColor redColor]; 
[cell.textLabel addSubview:line]; 
0

作出一些線(如圖片等)的tableViewCell

如[cell.contentView addSubView以上:$ LINE_IMAGE_VIEW ]

你可以得到標籤的寬度這樣

CGFloat width = cell.titleLabel.frame.size.width 

然後分配WID th到自定義線條圖像。

0

這將貫穿整個細胞。如果你需要它看起來像完成任務:

CGSize size = cell.contentView.frame.size; // you'll draw the line in whole cell. 

     UIView *line = [[UIView alloc] initWithFrame:CGRectMake(15,size.height/2,size.width - 30, 1)]; 
     line.backgroundColor = [UIColor grayColor]; // set your preferred color 
     [cell addSubview:line]; 

您可能表明CGRectMake而不是15一些其他的價值 - 它是由十抵消在這種情況下更好,那麼你會用加倍值減少寬度(以我的情況是15 * 2 = 30),以便它看起來不錯。