tableView的一些属性

const NSUInteger numberOfSections = self.numberOfSections;

const UIEdgeInsets contentInset = self.contentInset;

const CGPoint contentOffset = self.contentOffset;

const CGFloat sectionViewMinimumOriginY = contentOffset.y + contentInset.top + headerViewInsets.top;

// Layout each header view

for(NSUInteger section = 0; section < numberOfSections; section++)

{

UIView* sectionView = [self headerViewForSection:section];

if(sectionView == nil)

continue;

const CGRect sectionFrame = [self rectForSection:section];

CGRect sectionViewFrame = sectionView.frame;

sectionViewFrame.origin.y = ((sectionFrame.origin.y < sectionViewMinimumOriginY) ? sectionViewMinimumOriginY : sectionFrame.origin.y);

// If it‘s not last section, manually ‘stick‘ it to the below section if needed

if(section < numberOfSections - 1)

{

const CGRect nextSectionFrame = [self rectForSection:section + 1];

if(CGRectGetMaxY(sectionViewFrame) > CGRectGetMinY(nextSectionFrame))

sectionViewFrame.origin.y = nextSectionFrame.origin.y - sectionViewFrame.size.height;

}

//        TPLOG(@"%f",sectionViewFrame.origin.y);

[sectionView setFrame:sectionViewFrame];

}

这个是当tableVIew的

UIEdgeInsets改变的时候,tableView的区头滑动不正常的处理,其中[self rectForSection:section]返回的是区头距离表头的绝对高度,不会改变,UIView* sectionView = [self headerViewForSection:section而这个view的frame确是相对的。这里的处理的逻辑就是当视图滑动的时候,在区头未滑倒顶部的时候,其view的高度设置成绝对高度,当在顶部停留的时候,再设置程偏移量,可实现在顶部的停留。

时间: 2025-01-24 01:20:02

tableView的一些属性的相关文章

iOS TableViewController内修改TableView的style属性

1. TableView的style属性默认为只读(readonly)属性, 一般在创建TableViewController时设置: UITableViewController *tableViewController = [[UITableViewController alloc] initWithStyle:UITableViewStylePlain]; TableView样式为: 2. 若要在TableViewController内修改TableView的style属性, 需进行如下设置

tableview 刷新 @property属性的用法

1.tableView的刷新1> 数据刷新的总体步骤* 修改模型数据* 刷新表格(刷新界面) 2> 刷新表格(刷新界面)的方法* 全局刷新(每一行都会重新刷新)- (void)reloadData; * 局部刷新(使用前提: 刷新前后, 模型数据的个数不变)- (void)reloadRows:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation; * 局部删除(使用前提: 模型数据减少的个数 ==

TableView 的某些属性的设置

1 //隐藏UITableViewCell的分隔线 2 [self.tableViewList setSeparatorStyle:UITableViewCellSeparatorStyleNone]; 3 //自定义cell选中时的背景色 4 cell.selectedBackgroundView = [[UIView alloc]init]; 5 cell.selectedBackgroundView.backgroundColor = [UIColor colorWithRed:228/2

在UIView上添加tableView设置代理属性

tableView的separatorStyle和separatorColor属性

我们可以通过设置tableView的separatorStyle属性来设置有无分割线以及分割线的风格,其中style定义如下: typedef enum { UITableViewCellSeparatorStyleNone, UITableViewCellSeparatorStyleSingleLine, UITableViewCellSeparatorStyleSingleLineEtched } UITableViewCellSeparatorStyle; 同时还可以通过tableView

TableView 的那些坑

1. 分割线填满cell宽度, 并且设置分割线的颜色 1.1 利用系统的分割线填充 1.1.1 tableView 设置如下属性 // 给tableView设置如下属性值 tableView.layoutMargins = UIEdgeInsets.zero tableView.separatorInset = UIEdgeInsets.zero 1.1.2 设置完tableView属性你发现执行完可能好一点不过还需要设置cell的一个属性, 并且这个属性一定要在cell 即将显示的时候设置 f

自定的TableView

一.自定的TableView 有的时候,我们需要vc视图中添加一个表视图,此时在ViewController中使用TableViewController是不可行的这就,因此就要使用自定义的TableView了. 如下图: 1.拖拽TableView:向ViewController中添加一个TableView,如果需要自己配置自定义的cell,可以添加进去,然后为这个cell创建一个继承自TableViewCell的类,绑定它即可. 2.设置代理:绑定ViewController为TableVie

ios之UITableViewController(二) tableView的编辑模式

tableView的编辑模式 表视图可以进入编辑模式,当进入编辑模式就可以进行删除.插入.移动单元等操作 效果图: 让表视图进入编辑模式,进入编辑模式的方法有两种,一种是使用导航栏的edit 按钮,另一种是设置tableView的editing属性进入编辑模式. 最后通过实现UITableViewDataSource协议的方法实现单元格的删除.插入和移动 1,在viewDidLoad方法里面指定导航栏的右按钮为edit按钮 self.navigationItem.rightBarButtonIt

TableView

###UITableView基本使用方法 1.首先,Controller需要实现两个delegate ,分别是UITableViewDelegate 和UITableViewDataSource 2.然后 UITableView对象的 delegate要设置为 self. 3.然后就可以实现这些delegate的一些方法拉. (1)- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView; 这个方法返回 tableview