0

我正在 uitableview 单元格中加载自定义分隔符图像。

这是我的代码:

- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:    (NSIndexPath *)indexPath
{
   static NSString *CellID=@"Cell"
   MyTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];

if (cell == nil)
{
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:SwitchCellIdentifier];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    UIImageview *aSwitch = [[UIImageview alloc] initWithImage:[UIImage imageNamed:@"divider.png"]];
    separator.frame = CGRectMake(0,50,320,1);
    [cell.contentView addSubview:seperator];

}

if(cell.height == 22)
{
   /// here i am setting frame for uiimageview
}

但我得到分隔图像在滚动时仅消失 20 行中的一行。

你能帮忙解释一下为什么它会这样加载吗?

4

2 回答 2

1

如果您已将分隔符UIImage放在单元格的边界之外,并设置cell.clipsToBounds = NO;为显示分隔符图像,则分隔符图像可能会通过绘制下一个单元格而被隐藏。

当单元格在屏幕上绘制时,您无法控制它们的 z-index,这取决于您滚动的位置(从下到上,或从上到下)。

如果这确实是您的问题,您可以将分隔器放在电池框架内,或者如果您的分隔器足够薄,请使用:

[TableView setSeparatorColor:[UIColor colorWithPatternImage:[UIImage imageNamed:...]]];
于 2013-05-28T12:17:18.737 回答
0
self.tblView=[[UITableView alloc] initWithFrame:CGRectMake(0,0,320,370) //set as u need
style:UITableViewStylePlain];
self.tblView.delegate=self;
self.tblView.dataSource=self;
[self.view addSubview:self.tblView];

UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 10)];//set as u ne
v.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"divider.png"]];
[self.tblView setTableHeaderView:v];
[self.tblView setTableFooterView:v];
[v release];
于 2013-04-01T14:55:41.427 回答