• ios之UITabelViewCell的自定义(xib实现)


    通过继承UITableViewCell来自定义cell

     

    1、创建一个空的项目、命名:


     

    2、创建一个UITableViewController 并且同时创建xib:


     

    3、设置AppDelegate.m中window的根控制器为刚刚创建的TableViewController:

     

    1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
    2. {  
    3.     self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];  
    4.     TableViewController *tableViewController = [[[TableViewController alloc] init] autorelease]; //自动释放  
    5.     //设置根控制器  
    6.     self.window.rootViewController = tableViewController;  
    7.     [self.window makeKeyAndVisible];  
    8.     return YES;  
    9. }  


    4、创建自定义的UITableViewCell:

     


     

    5、创建自定义cell的xib 拖放需要的控件

    选择User Interface。创建空的xib。拖入Cell控件。

    完成自定义的cell控件。

     

    设置cell控件的Identfier。绑定Cell类并且将控件的输出口关联到TableViewCell.h文件中。

     

    6、对TableViewController类编码,在委托方法中设置自定义的Cell:

     

    1. #import "TableViewController.h"  
    2. #import "TableViewCell.h"  
    3.   
    4. @interface TableViewController (){  
    5.     NSMutableArray *tableData;  //表格数据  
    6. }  
    7.   
    8. @end  
    9.   
    10. @implementation TableViewController  
    11.   
    12. - (id)initWithStyle:(UITableViewStyle)style  
    13. {  
    14.     self = [super initWithStyle:style];  
    15.     if (self) {  
    16.         // Custom initialization  
    17.     }  
    18.     return self;  
    19. }  
    20.   
    21. - (void)viewDidLoad  
    22. {  
    23.     [super viewDidLoad];  
    24.     //初始化表格数据  
    25.     tableData = [[NSMutableArray alloc] init];  
    26.     for (int i = 0; i< 10; i++) {  
    27.         [tableData addObject:[NSString stringWithFormat:@"MyCellDemon%i",i]];  
    28.     }  
    29.   
    30.     //设置row的高度为自定义cell的高度  
    31.     self.tableView.rowHeight = 90;  
    32.    
    33. }  
    34.   
    35. - (void)didReceiveMemoryWarning  
    36. {  
    37.     [super didReceiveMemoryWarning];  
    38.  }  
    39.   
    40. #pragma mark - Table view data source  
    41.   
    42. - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView  
    43. {  
    44. #warning Potentially incomplete method implementation.  
    45.      return 1;  
    46. }  
    47.   
    48. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section  
    49. {  
    50. #warning Incomplete method implementation.  
    51.      return [tableData count];  
    52. }  
    53.   
    54. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  
    55. {  
    56.     //指定cellIdentifier为自定义的cell  
    57.     static NSString *CellIdentifier = @"TableViewCell";  
    58.     //自定义cell类  
    59.     TableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];  
    60.     if (cell == nil) {  
    61.         //通过xib的名称加载自定义的cell  
    62.         cell = [[[NSBundle mainBundle] loadNibNamed:@"TableViewCell" owner:self options:nil] lastObject];  
    63.     }  
    64.       
    65.     //添加测试数据  
    66.     cell.titleLabel.text = [tableData objectAtIndex:indexPath.row];  
    67.     cell.content.text = @"这是一些测试数据";  
    68.     //测试图片  
    69.     cell.iamge.image = [UIImage imageNamed:@"testImage.jpg"];  
    70.      return cell;  
    71. }  
    72.   
    73. #pragma mark - Table view delegate  
    74.   
    75. - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath  
    76. {  
    77.   
    78. }  
    79.   
    80. @end  

    最终效果:

  • 相关阅读:
    《软件测试》实验
    作业5
    之前看构建之法老段让我写的随笔
    作业2
    Bookstore系统测试缺陷报告
    实验七——Web应用测试(bookstore项目上完成)
    《构建之法》读后感
    (1)写一个程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”); (2)编写单元测试进行测试; (3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。
    个人简介
    (1)把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”; (2)编写单元测试进行测试; (3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。
  • 原文地址:https://www.cnblogs.com/yulang314/p/3550487.html
Copyright © 2020-2023  润新知