美文网首页
重写表格

重写表格

作者: 偏执_cbbe | 来源:发表于2017-09-03 22:53 被阅读0次

    //AppDelegate.m

    ViewController *theVc = [[ViewController alloc]init];

    UINavigationController *theNav = [[UINavigationController alloc]initWithRootViewController:theVc];

    //添加标题

    theVc.title = @"菜单";

    self.window.rootViewController = theNav ;

    //ViewController.m

    #import "ViewController.h"

    #import "MyTableViewCell.h"

    @interface ViewController (){

    NSDictionary *theDic;

    }

    @property(nonatomic,strong)UITableView *theTable ;

    @end

    @implementation ViewController

    -(UITableView *)theTable

    {

    if (!_theTable)

    {

    _theTable  = [[UITableView alloc]initWithFrame:CGRectMake(0, 20, self.view.frame.size.width, self.view.frame.size.height-20) style:UITableViewStylePlain];

    _theTable.delegate = self ;

    _theTable.dataSource = self ;

    _theTable.rowHeight = 80 ;

    }

    return _theTable;

    }

    - (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    [self.view addSubview:self.theTable];

    NSString *path = [[NSBundle mainBundle]pathForResource:@"My list" ofType:@"plist"];

    theDic = [NSDictionary dictionaryWithContentsOfFile:path];

    }

    #pragma -

    #pragma mark -UITableViewDataSource

    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    {

    return theDic.allKeys.count;

    }

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

    {

    MyTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"celled"];

    if (!cell) {

    cell = [[MyTableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"celled"];

    }

    NSString *key = [theDic.allKeys objectAtIndex:indexPath.row];

    NSArray *arr = [theDic objectForKey:key];

    cell.theImage.image = [UIImage imageNamed:arr[0]];

    cell.theL1.text = key ;

    cell.theL2.text = arr[1];

    cell.theL3.text = arr[2];

    cell.theL4.text = arr[3];

    cell.theL5.text = arr[4];

    return cell ;

    }

    //MyTableViewCell.h

    #import@interface MyTableViewCell : UITableViewCell

    @property(nonatomic,strong)UIImageView *theImage ;

    @property(nonatomic,strong)UILabel *theL1,*theL2,*theL3,*theL4,*theL5 ;

    @end

    //MyTableViewCell.m

    #import "MyTableViewCell.h"

    @implementation MyTableViewCell

    //懒加载模式  使用下划线

    -(UIImageView *)theImage

    {

    if (!_theImage) {

    _theImage = [[UIImageView alloc]initWithFrame:CGRectMake(5, 5, 80, 80)];

    [_theImage.layer setCornerRadius:80/2];

    _theImage.layer.masksToBounds = YES ;

    //添加到视图

    [self addSubview:self.theImage];

    }

    return _theImage ;

    }

    //UILab懒加载

    -(UILabel*)theL1

    {

    if (!_theL1) {

    _theL1 = [[UILabel alloc]initWithFrame:CGRectMake(85, 5, 160, 30)];

    //添加到视图

    [self addSubview:self.theL1];

    }

    return _theL1 ;

    }

    -(UILabel*)theL2

    {

    if (!_theL2) {

    _theL2 = [[UILabel alloc]initWithFrame:CGRectMake(85, 25, 160, 30)];

    //添加到视图

    [self addSubview:self.theL2];

    }

    return _theL2 ;

    }

    -(UILabel*)theL3

    {

    if (!_theL3) {

    _theL3 = [[UILabel alloc]initWithFrame:CGRectMake(85,45, 160, 30)];

    //添加到视图

    [self addSubview:self.theL3];

    }

    return _theL3 ;

    }

    -(UILabel*)theL4

    {

    if (!_theL4) {

    _theL4 = [[UILabel alloc]initWithFrame:CGRectMake(255, 5, 160, 30)];

    //添加到视图

    [self addSubview:self.theL4];

    }

    return _theL4 ;

    }

    -(UILabel*)theL5

    {

    if (!_theL5) {

    _theL5 = [[UILabel alloc]initWithFrame:CGRectMake(305, 45, 160, 30)];

    //添加到视图

    [self addSubview:self.theL5];

    }

    return _theL5 ;

    }

    @end

    相关文章

      网友评论

          本文标题:重写表格

          本文链接:https://www.haomeiwen.com/subject/ufcsjxtx.html