• cell选中后进入重用池出来选中状态消失


    cell选中后进入重用池出来选中状态消

    #import "ClickOnCellMultipleChoiceViewController.h"

    @interface ClickOnCellMultipleChoiceViewController ()<UITableViewDelegate,UITableViewDataSource>

    @property (nonatomic , strong) UITableView *tableView;




    //定义一个数组来记录cell的是否选中的状态

    @property (nonatomic, strong) NSMutableArray *arrCellSelect;

    //cell的个数的数组

    @property (nonatomic, strong) NSArray *arrCellCount;

    @end

    @implementation ClickOnCellMultipleChoiceViewController

    - (void)viewDidLoad {
        [super viewDidLoad];
        
        
        [self creatTable];
        
        [self dataHadel];
        
        
    }



    - (void)creatTable{
        
        self.tableView = [[UITableView alloc]initWithFrame:[UIScreen mainScreen].bounds style:(UITableViewStylePlain)];
        
        [self.view addSubview:self.tableView];
        
        self.tableView.delegate = self;
        
        self.tableView.dataSource = self;
        
    }

    //网络请求

    - (void)dataHadel{
        
        //此处获取cell的个数数组
        
        self.arrCellCount = [NSArray array];
        
        self.arrCellCount = @[@"0",@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9"];
        
        //遍历cell的个数,添加cell对应的选中状态
        
        _arrCellSelect = [NSMutableArray array];
        for (int i =0 ; i< self.arrCellCount.count; i++) {
            
            [_arrCellSelect addObject:@(NO)];//一开始cell为不选中
            
        }
        
        
        [self.tableView reloadData];
        
    }



    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
        
        return 1;
        
    }



    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
        
        return self.arrCellCount.count;
        
    }



    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
        
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
        
        if (!cell) {
            
            cell = [[UITableViewCell alloc]initWithStyle:(UITableViewCellStyleValue1) reuseIdentifier:@"cell"];
            
        }
        
        if ([[self.arrCellSelect objectAtIndex:indexPath.row] isEqual:@(NO)]) {
            
            cell.detailTextLabel.text = @"我落选了";
            
        }
        
        else{
            
            cell.detailTextLabel.text = @"我入选了";
            
        }
        
        cell.textLabel.text = self.arrCellCount[indexPath.row];

        
        
        return cell;
        
    }



    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
        
        UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
        
        NSIndexPath *indPath = [NSIndexPath indexPathForRow:indexPath.row inSection:indexPath.section];
        
        if ([[_arrCellSelect objectAtIndex:indexPath.row] isEqual:@(NO)]) {
            
            [_arrCellSelect replaceObjectAtIndex:indexPath.row withObject:@(YES)];
            
            cell.detailTextLabel.text =@"我入选了";
            
            
            
        }
        
        else{
            
            [_arrCellSelect replaceObjectAtIndex:indexPath.row withObject:@(NO)];
            
            cell.detailTextLabel.text = @"我落选了";
            
        }
        
        [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indPath] withRowAnimation:(UITableViewRowAnimationNone)];
        [self.tableView reloadData];
        
        
        
       
        
        
    }





    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }

    /*
    #pragma mark - Navigation

    // In a storyboard-based application, you will often want to do a little preparation before navigation
    - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
        // Get the new view controller using [segue destinationViewController].
        // Pass the selected object to the new view controller.
    }
    */

    @end

  • 相关阅读:
    ARMV7-M数据手册---Part A :Application Level Architecture---A7 Instruction Details
    卷积神经网络
    Theano深度学习结构分析
    BP神经网络
    Softmax回归
    CART:分类与回归树
    基于单决策树的AdaBoost
    Logistic回归
    Qt搭建多线程Server
    支持向量机(SVM)
  • 原文地址:https://www.cnblogs.com/Yishu/p/7422241.html
Copyright © 2020-2023  润新知