cell选中和未选中状态改变更新UI,逻辑

2019-08-13  本文已影响0人  架构师的一小步

第一步:根据选中的数据改变图片状态,这里是通过获取数据显示不同状态按钮的

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    static NSString *ID = @"SsLocationCell";
    SsLocationCell *cell =[tableView dequeueReusableCellWithIdentifier:ID];
    if (cell ==nil) {
        cell = [SsLocationCell xibInitWithNib];
    }
    if (_selectIndex ==indexPath) {
        cell.ChooseAnimation.image =[UIImage imageNamed:@"ss_mapon"];
    }else{
        cell.ChooseAnimation.image =[UIImage imageNamed:@"ss_mapoff"];
    }
    
    
    return cell;
}

第二步:实时更新数据UI的点中状态

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    //如果是之前选中的,则取消选择
    SsLocationCell *celled = (SsLocationCell *)[tableView cellForRowAtIndexPath:_selectIndex];
    celled.ChooseAnimation.image =[UIImage imageNamed:@"ss_mapoff"];
    //记录当前选中的位置
    _selectIndex = indexPath;
    //当前选择的打勾
    SsLocationCell *cell = (SsLocationCell *)[tableView cellForRowAtIndexPath:indexPath];
    cell.ChooseAnimation.image =[UIImage imageNamed:@"ss_mapon"];
    
}
上一篇 下一篇

猜你喜欢

热点阅读