现在的位置: 首页 > 综合 > 正文

UITableViewCell 自定义默认选中 和 改变cell背景图片

2013年07月21日 ⁄ 综合 ⁄ 共 1313字 ⁄ 字号 评论关闭

   首先我们要改变cell 的nomoral背景和selected 背景:     

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSUInteger row = [indexPath row];
    static NSString *CellIdentifier = @"Cell33";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
       // cell.selectionStyle= UITableViewCellSelectionStyleNone;
      //  cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;
   
    }
 
    cell.textLabel.text=[self.cityListArray objectAtIndex:row];
 
    cell.backgroundView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell_select_normal.png"]]autorelease];
    cell.selectedBackgroundView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell_select_highlight.png"]]autorelease];
    
    return cell;
}

   UITableview我们可以自定义任意一个cell为默认选中状态方法是:

- (void)viewDidAppear:(BOOL)animated {
    NSIndexPath *indexPath=[NSIndexPath indexPathForRow:0 inSection:0];
    [myTableView selectRowAtIndexPath:indexPath animated:YES  scrollPosition:UITableViewScrollPositionBottom];
}

或者

- (void)viewDidLoad {
    [super viewDidLoad];
    NSIndexPath *indexpath=[NSIndexPath indexPathForRow:0 inSection:0];
    [myTableView selectRowAtIndexPath:indexpath animated:YES scrollPosition:UITableViewScrollPositionBottom];
}

效果如图:

默认选中

改变选中的cell 的背景

抱歉!评论已关闭.