zoukankan      html  css  js  c++  java
  • [转]UITableViewCell的使用——自定义tableView视图

    视图需要我们自己去定义样式时用到了TableViewCell组件,效果如下 
     
    首先创建View Based App工程,在.xib文件中拖入一个Table View,前面我们说到了,这里就不再重复,注意连接协议和两个必须方法的实现。完成.h中代码 

    C代码  收藏代码
    1. #import <UIKit/UIKit.h>  
    2. @interface TableViewCellViewController : UIViewController  
    3.             <UITableViewDelegate,UITableViewDataSource>{  
    4.                 IBOutlet UITableView *tView;  
    5. }  
    6. @property (nonatomic,retain)UITableView *tView;  
    7. @end  


    完成.m中代码 

    C代码  收藏代码
    1. #import "TableViewCellViewController.h"  
    2. #import "MyCell.h"  
    3. @implementation TableViewCellViewController  
    4. @synthesize tView;  
    5. - (void)viewDidLoad {  
    6.     [super viewDidLoad];  
    7. }  
    8. - (void)didReceiveMemoryWarning {  
    9.     [super didReceiveMemoryWarning];  
    10. }  
    11. - (void)dealloc {  
    12.     [tView release];  
    13.     [super dealloc];  
    14. }  
    15. -(NSInteger) tableView:(UITableView *)tableView  
    16.  numberOfRowsInSection:(NSInteger)section  
    17. {  
    18.     return 9;  
    19. }  
    20. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  
    21. {  
    22.     static NSString *CellIdentifier = @"CustomCellIdentifier";  
    23.     MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];  
    24.     if (cell == nil) {  
    25.         NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"mycell" owner:self options:nil];  
    26.         cell = [array objectAtIndex:0];  
    27.         [cell setSelectionStyle:UITableViewCellSelectionStyleGray];  
    28.     }  
    29.     [[cell lable] setText:@"31"];  
    30.     [[cell lable1] setText:@"Raul"];  
    31.     [[cell myImage] setImage:[UIImage imageNamed:@"3316.jpg"]];  
    32.     return cell;  
    33. }  
    34. - (CGFloat)tableView:(UITableView *)atableView heightForRowAtIndexPath:(NSIndexPath *)indexPath     
    35. {         
    36.     return 120;  
    37. }  
    38. @end  


    若不需要cell则改为: 
    static NSString *CellIdentifier2 = @"Cell"; 
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier2]; 
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier2] autorelease]; 
    cell.textLabel.text =@"CCCCCCCC"; 
    [cell.textLabel setFont:[UIFont fontWithName:@"Helvetica" size:16.0f]]; 
    // cell.accessoryView=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"sign_10x12.png"]]; 
    cell.selectionStyle = UITableViewCellSelectionStyleBlue; 
    [cell.textLabel setTextColor:[UIColor colorWithRed:0/255.0 green:106/255.0 blue:166/255.0 alpha:1.0]];
    return cell; 
    下面我们新建一个类,注意subclass选择UITableViewCell,名称为MyCell,生成之后再创建相应的xib文件
     
     
    双击MyCell.xib,将Table View Cell拖入主窗口中,并且删除原主窗口中的View图标 
     
    在.h文件中完成代码 

    C代码  收藏代码
    1. #import <UIKit/UIKit.h>  
    2. @interface MyCell : UITableViewCell {  
    3.     IBOutlet UILabel *lable;  
    4.     IBOutlet UILabel *lable1;  
    5.     IBOutlet UIImageView *myImage;  
    6. }  
    7. @property(nonatomic,retain) UILabel *lable;  
    8. @property(nonatomic,retain) UILabel *lable1;  
    9. @property (nonatomic,retain) UIImageView *myImage;  
    10. @end  


    在.m中完成代码 

    C代码  收藏代码
    1. #import "MyCell.h"  
    2. @implementation MyCell  
    3. @synthesize lable,lable1,myImage;  
    4. - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {  
    5.     if ((self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])) {  
    6.         // Initialization code  
    7.     }  
    8.     return self;  
    9. }  
    10. - (void)setSelected:(BOOL)selected animated:(BOOL)animated {  
    11.   
    12.     [super setSelected:selected animated:animated];  
    13.   
    14.     // Configure the view for the selected state  
    15. }  
    16. - (void)dealloc {  
    17.     [myImage release];  
    18.     [lable release];  
    19.     [super dealloc];  
    20. }  
    21. @end  


    最后我们看一下MyCell.xib中的连接,按住Ctrl拖入将要显示区域的文字和图片找到相应的接口即可。(注意:是myCell和文字和图片连接,不是file’s owner和文字和图片连接,我又犯这个错误了) 
     

  • 相关阅读:
    linux编程之main()函数启动过程【转】
    dlmalloc(一)【转】
    Linux进程调度原理【转】
    Linux内存管理原理【转】
    malloc原理和内存碎片【转】
    Linux MTD系统剖析【转】
    linux驱动开发:用户空间操作LCD显示简单的图片【转】
    LCD驱动分析【转】
    LCD常用接口原理【转】
    LCD之mipi DSI接口驱动调试流程【转】
  • 原文地址:https://www.cnblogs.com/holyenzou/p/2511987.html
Copyright © 2011-2022 走看看