UITableView基本使用方法1

 1.   首先,Controller需要实现两个 delegate ,分别是 UITableViewDelegate 和 UITableViewDataSource

  2.然后 UITableView对象的 delegate要设置为 self。

  3. 然后就可以实现这些delegate的一些方法拉。

    (1)- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;    

        这个方法返回tableview 有多少个section

[cpp]  viewplain copy
  1. //返回有多少个Sections  
  2. (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView   
  3.  
  4.     return 1;  
  5. }  
 (2)- (NSInteger)tableView:(UITableView *)tablenumberOfRowsInSection:(NSInteger)section; 这个方法返回  对应的section有多少个元素,也就是多少行
[cpp] viewplaincopy
  1. (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section   
  2.  
  3.     return 10;  
  4. }  
(3)-(CGFloat)tableView:(UITableView *)tableViewheightForRowAtIndexPath:(NSIndexPath*)indexPath;    这个方法返回指定的 row 的高度。

 - (CGFloat)tableView:(UITableView *)tableViewheightForHeaderInSection:(NSInteger)section;   这个方法返回指定的 section的header view的高度。  - (CGFloat)tableView:(UITableView *)tableViewheightForFooterInSection:(NSInteger)section;  这个方法返回指定的section的footer view 的高度。
 (4)-(UITableViewCell *)tableView:(UITableView *)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath; 返回指定的row的cell。这个地方是比较关键的地方,一般在这个地方来定制各种个性化的cell元素。这里只是使用最简单最基本 的cell 类型。其中有一个主标题cell.textLabel 还有一个副标题cell.detailTextLabel,  还有一个image在最前头叫  cell.imageView. 还可以设置右边的图标,通过cell.accessoryType 可以设置是饱满的向右的蓝色箭头,还是单薄的向右箭头, 还是勾勾标记。         
[cpp] viewplaincopy
  1. (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath   
  2.  
  3.     static NSString showUserInfoCellIdentifier @"ShowUserInfoCell" 
  4.     UITableViewCell cell [tableView_ dequeueReusableCellWithIdentifier:showUserInfoCellIdentifier];  
  5.     if (cell == nil)  
  6.      
  7.         // Create cell to display an ingredient.  
  8.         cell [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle   
  9.                                        reuseIdentifier:showUserInfoCellIdentifier]   
  10.                 autorelease];  
  11.      
  12.       
  13.     // Configure the cell.  
  14.     cell.textLabel.text=@"签名" 
  15.     cell.detailTextLabel.text [NSString stringWithCString:userInfo.user_signature.c_str()  encoding:NSUTF8StringEncoding];  
  16.          
  17.          
(5)-(CGFloat)tableView:(UITableView *)tableViewheightForHeaderInSection:(NSInteger)section   返回指定的 section 的header的高度
[cpp] viewplaincopy
  1. (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section  
  2.  
  3.     if (section ==0)  
  4.         return 80.0f;  
  5.     else  
  6.         return 30.0f;  
  7.  
  (6)- (NSString *)tableView:(UITableView *)tableViewtitleForHeaderInSection:(NSInteger)section    返回指定的section 的 header  的title,如果这个section header 有返回view,那么title就不起作用了
[cpp] viewplaincopy
  1. (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section  
  2.  
  3.     if (tableView == tableView_)  
  4.      
  5.         if (section == 0)   
  6.          
  7.             return @"title 1" 
  8.           
  9.         else if (section == 1)   
  10.          
  11.             return @"title 2" 
  12.           
  13.         else   
  14.          
  15.             return nil;  
  16.          
  17.       
  18.     else   
  19.      
  20.         return nil;  
  21.      
  22.  

(7) -(UIView *)tableView:(UITableView *)tableViewviewForHeaderInSection:(NSInteger)section  返回指定的 section header 的view,如果没有,这个函数可以不返回view
[cpp] viewplaincopy
  1. (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section  
  2.  
  3.     if (section == 0)   
  4.      
  5.           
  6.         UIView* header [[[NSBundle mainBundle] loadNibNamed: @"SettingHeaderView"   
  7.                                                         owner: self  
  8.                                                       options: nil] lastObject];  
  9.        
  10.         else  
  11.          
  12.            return nil;  
  13.          
  14.  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值