iOS UIKit:UITableView
UITableView是UIScollView的子類,用于顯示一列數據。
裝在UITableView 里面的元素是UITableViewCell。
?
UITableViewCell 預設有4種樣式Style:
UITableViewCellStyleDefault:預設使用這種,若左側ImageView沒圖的話,只有一行字(textLable.text)。
UITableViewCellStyleValue1:左側為textLable.text并且左對齊,右側為detailTextLable.text并且右對齊。
UITableViewCellStyleValue2:左側為detailTextLable.text,右側為textLable.text并且左對齊。
UITableViewCellStyleSubtitle:跟UITableViewCellStyleDefault大致相同,detailTextLable.text出現在textLable.text下方。
UITableViewDataSource:
UITableViewDataSource 協議定了2個要求實現的方法(tableView:cellForRowAtIndexPath 和tableView:numberOfRowsInSection)。通過實現這些方法,你告訴表視圖顯示多少行數據和每一行中的數據。
- (NSInteger)tableView:(UITableView *)tableViewnumberOfRowsInSection:(NSInteger)section{return [model getRowCount]; }- (UITableViewCell *)tableView:(UITableView *)tableViewcellForRowAtIndexPath:(NSIndexPath *)indexPath {static NSString *CellIdentifier = @"Cell";if([indexPath section] == 0){UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];if (cell == nil) {cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:CellIdentifier] ;}NSUInteger row = [indexPath row];cell.textLabel.text = [model getNameAtIndex:row]; }else{cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];if (!cell)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; urlField = [[[UITextField alloc] initWithFrame:CGRectZero] autorelease];
[[cell contentView] addSubview:urlField];
}
return cell;
}
?其他可選的方法包括:
Configuring a Table View – numberOfSectionsInTableView: – sectionIndexTitlesForTableView: – tableView:sectionForSectionIndexTitle:atIndex: – tableView:titleForHeaderInSection: – tableView:titleForFooterInSection: Inserting or Deleting Table Rows – tableView:commitEditingStyle:forRowAtIndexPath: – tableView:canEditRowAtIndexPath: Reordering Table Rows – tableView:canMoveRowAtIndexPath: – tableView:moveRowAtIndexPath:toIndexPath:?
??
UITableViewDelegate:
負責處理UITableView的表現。
?協議中的可選方法讓你管理表行的高度,配置節點頭部和底部,對表單元重新排序等等。
- ( void ) tableView: ( UITableView * ) tableView didSelectRowAtIndexPath: ( NSIndexPath * ) indexPath {if ([ tableView isEqual: self . myTableView ]){NSLog ( @"%@" ,[ NSString stringWithFormat: @"Cell %ld in Section %ld is selected" ,( long ) indexPath . row , ( long ) indexPath . section ]);} }源碼下載
轉載于:https://www.cnblogs.com/shangdahao/archive/2013/05/28/iOSUIKit.html
總結
以上是生活随笔為你收集整理的iOS UIKit:UITableView的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python基础语法+爬虫精进.pdf_
- 下一篇: SQL 测验-自测结果