關於iOS中TableVIew(列表)的自訂建立和自訂的Cell

來源:互聯網
上載者:User

標籤:

最近研究了一些HTML5的基礎,一些C++的基礎,有些冷落了我的iOS技術,以至於最近對於iOS有種沒有信心的感覺,所以今天開始迴歸我的iOS核心技術,眼前表現為回顧iOS技術,以部落格的形式,寫總結,好吧,廢話不多說

 

純程式碼形式建立:1.建立tableView

          2.定義一個自訂Cell

        3.設定代理

        4.代理方法的我實現

 

tableView的建立主要有以下步驟:

1.建立tableView    

- (void)createTableView
{

 

//初始化tableView並定義位置,大小。
    UITableView * tableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, SCREENWIDTH, SCREENHEIGHT)];

//設定table代理的資料來源和代理為自己
    tableView.delegate =self;
    tableView.dataSource = self;

 

//為table 註冊自訂的Cell的類。註冊方法如下
    [tableView registerClass:[MyCell class] forCellReuseIdentifier:@"MyCell"];

//加入視圖。
    [self.view addSubview:tableView];
    
}

 

 

2.自訂Cell


@interface MyCell : UITableViewCell
@property(nonatomic,strong) UILabel * label;
@property(nonatomic,strong) UIImageView * image;

@end

@implementation MyCell

- (id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    
    self =[super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        self.label  =[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 20, 30)];
        
        self.image  = [[UIImageView alloc]initWithFrame:CGRectMake(20, 30, 50, 50)];
        
        [self.contentView addSubview:self.image];
        [self.contentView addSubview:self.label];
        
    }
    return self;
}

@end

 

3.設定代理

@interface MyTableViewController ()<UITableViewDelegate,UITableViewDataSource>

4.代理方法的實現:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 15;
}


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

//為Cell設定重用的ID
    MyCell * cell = [tableView dequeueReusableCellWithIdentifier:@"MyCell" forIndexPath:indexPath];
//如果cell沒有才建立
    if (cell==nil) {
        cell= [[MyCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"MyCell"];
    }
    
    cell.textLabel.text = [NSString stringWithFormat:@"%ld",(long)indexPath.row];
    
    return cell;
    
}

 

關於iOS中TableVIew(列表)的自訂建立和自訂的Cell

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.