设为首页 加入收藏

TOP

UITableView 基本使用方法总结(一)
2019-08-26 07:00:05 】 浏览:54
Tags:UITableView 基本 使用方法 总结

1.、首先,Controller需要实现两个  delegate ,分别是  UITableViewDelegate 和  UITableViewDataSource
2、然后 UITableView对象的 delegate要设置为 self。
3、 然后就可以实现这些delegate的一些方法拉。

(1)- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;   这个方法返回 tableview 有多少个section 

//返回有多少个Sections
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 
{
    return 1;
}

(2)- (NSInteger)tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section;  这个方法返回   对应的section有多少个元素,也就是多少行。

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

(3)- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;   这个方法返回指定的 row 的高度。

        - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;   这个方法返回指定的 section的header view 的高度。

        - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section;   这个方法返回指定的 section的footer view 的高度。

(4)- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;  返回指定的row 的cell。

这个地方是比较关键的地方,一般在这个地方来定制各种个性化的 cell元素。这里只是使用最简单最基本的cell 类型。其中有一个主标题 cell.textLabel 还有一个副标题cell.detailTextLabel,  还有一个 image在最前头 叫 cell.imageView 还可以设置右边的图标,通过cell.accessoryType 可以设置是饱满的向右的蓝色箭头,还是单薄的向右箭头,还是勾勾标记。  

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{
    static NSString *showUserInfoCellIdentifier = @"ShowUserInfoCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:showUserInfoCellIdentifier];
    if (cell == nil)
    {
        // Create a cell to display an ingredient.
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:showUserInfoCellIdentifier] autorelease];
    }
    
    // Configure the cell.
    cell.textLabel.text=@"签名";
    cell.detailTextLabel.text = [NSString stringWithCString:userInfo.user_signature.c_str() encoding:NSUTF8StringEncoding];
 }

 (5)- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section   返回指定的 section 的 header 的高度

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    if (section ==0)
        return 80.0f;
    else
        return 30.0f;
}

(6)- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section  返回指定的section 的 header  的 title,如果这个section header  有返回view,那么title就不起作用了。

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
    if (tableView == tableView_)
    {
        if (section == 0) 
        {
            return @"title 1";
        } 
        else if (section == 1) 
        {
            return @"title 2";
        } 
        else 
        {
            return nil;
        }
    } 
    else 
    {
        return nil;
    }
}

(7) - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section   返回指定的 section header 的view,如果没有,这个函数可以不返回view

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)s
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇ios开发UI篇—UIScrollView属性及.. 下一篇UITapGestureRecognizer 的用法(..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目