• iOS 自定义UITableViewCell


    #import <UIKit/UIKit.h>
    
    @interface AppDelegate : UIResponder <UIApplicationDelegate>
    
    @property (strong, nonatomic) UIWindow *window;
    
    
    @end
    #import "AppDelegate.h"
    #import "AViewController.h"
    
    @implementation AppDelegate
    
    
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
        // Override point for customization after application launch.
        self.window.backgroundColor = [UIColor whiteColor];
        
        
        
        AViewController *root = [AViewController new];
        UINavigationController *navi = [[UINavigationController alloc] initWithRootViewController:root];
        
        self.window.rootViewController = navi;
        [self.window makeKeyAndVisible];
        return YES;
    }
    
    @end
    #import <UIKit/UIKit.h>
    
    @interface AViewController : UIViewController<UITableViewDelegate,UITableViewDataSource>
    {
        // 呈现数据源的控件
        UITableView *_tableView;
        
        // 数据源
        NSArray *datas;
    }
    @end
    #import "AViewController.h"
    #import "CumstomCell.h"//导入自定义的cell
    
    @implementation AViewController
    
    -(void)loadView
    {
        [super loadView];
        
        // 不分组的plain样式
        _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 568) style:UITableViewStylePlain];
        // 数据源代理
        _tableView.dataSource = self;
        _tableView.delegate = self;
        [self.view addSubview:_tableView];
    }
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        
        NSString *str = @"A,B,C,D,E,F,G,H,I,J,K,L,M,N";
        datas = [str componentsSeparatedByString:@","];
    }
    
    #pragma mark -数据源配置-
    // 配置tablview显示多少行数据
    -(NSInteger)tableView:(UITableView *)tableView
    numberOfRowsInSection:(NSInteger)section
    {
        return datas.count;
    }
    
    -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return 120.0f;
    }
    
    // 每个cell显示什么内容
    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        static NSString *indentity = @"cell";
        //使用自定义的cell
        CumstomCell *cell = [_tableView dequeueReusableCellWithIdentifier:indentity];
        if (cell == nil) {
            cell=[[CumstomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:indentity];
        }
        
        //NSLog(@"%d",indexPath.row);
        //NSString *t = [datas objectAtIndex:indexPath.row];
        
        //cell.textLabel.text = t;
        cell.imgView1.image = [UIImage imageNamed:@"123.jpg"];
        cell.imgView2.image = [UIImage imageNamed:@"123.jpg"];
        cell.imgView3.image = [UIImage imageNamed:@"123.jpg"];
        
        return cell;
    }
    
    @end
    #import <UIKit/UIKit.h>
    
    @interface CumstomCell : UITableViewCell
    
    
    @property(nonatomic,strong)UIImageView *imgView1;
    @property(nonatomic,strong)UIImageView *imgView2;
    @property(nonatomic,strong)UIImageView *imgView3;
    
    @end
    #import "CumstomCell.h"
    
    @implementation CumstomCell
    @synthesize imgView1=_imgView1;
    @synthesize imgView2=_imgView2;
    @synthesize imgView3=_imgView3;
    
    -(void)dealloc{
        
        /*
        [_imgView1 release];
        [_imgView2 release];
        [_imgView3 release];
        [super dealloc];
        */
        
        _imgView1 = nil;
        _imgView2 = nil;
        _imgView3 = nil;
    }
    /**
     *  重写该方法
     */
    -(UITableViewCell *)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
    {
        if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
            
            self.imgView1 = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 80, 100)];
            //self.imgView1.backgroundColor = [UIColor redColor];
            [self.contentView addSubview:self.imgView1];
            
            self.imgView2 = [[UIImageView alloc] initWithFrame:CGRectMake(10+80+10, 10, 80, 100)];
            //self.imgView2.backgroundColor = [UIColor redColor];
            [self.contentView addSubview:self.imgView2];
            
            
            self.imgView3 = [[UIImageView alloc] initWithFrame:CGRectMake(10+2*80+2*10, 10, 80, 100)];
            //self.imgView3.backgroundColor = [UIColor redColor];
            [self.contentView addSubview:self.imgView3];
            
        }
        
        return self;
    }
    
    
    
    - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
        [super setSelected:selected animated:animated];
    
        // Configure the view for the selected state
    }
    
    @end
  • 相关阅读:
    基于Kubernates微服务案例
    领导人怎样带领好团队
    前端性能核对表Checklist-2018
    国际巨头互联网公司一些运营与管理思路
    IT研发工程师职业规划
    高性能风控数据平台设计
    基础设施DevOps演进之路
    2017-2018年Scrum状态调查报告
    大型互联网系统的监控流水线
    小程序【情书与歌】一小时过审经验小谈
  • 原文地址:https://www.cnblogs.com/lantu1989/p/5092176.html
Copyright © 2020-2023  润新知