zoukankan      html  css  js  c++  java
  • ios开发之--UITableView中的visibleCells的用法

    先上图:

    具体代码如下:

    #import "ViewController.h"
    
    @interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
    @property(nonatomic,strong)UITableView *myTableV;
    @property(nonatomic,strong)NSArray *contentAry;
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        self.contentAry = [NSArray array];
        [self creatUI];
    }
    - (IBAction)leftAction:(id)sender {
        self.contentAry = self.myTableV.visibleCells;
        NSLog(@"----%@",self.contentAry);
        
        UIButton *button = (UIButton*)sender;
        button.selected = !button.selected;
        CGAffineTransform transform;
        double duration = 0.1;
        
        if (button.tag == 1) {
            transform = CGAffineTransformMakeTranslation(-[UIScreen mainScreen].bounds.size.width, 0);
        }else if (button.tag == 2)
        {
            for (UITableViewCell *cell in self.contentAry) {
                [UIView animateWithDuration:duration delay:0 options:0 animations:^{
                    cell.transform = CGAffineTransformIdentity;
                } completion:^(BOOL finished) {
                    
                }];
                duration += 0.1;
            }
            return;
        }else
        {
            transform = CGAffineTransformMakeTranslation([UIScreen mainScreen].bounds.size.width, 0);
        }
        
        for (UITableViewCell *cell in self.contentAry) {
            [UIView animateWithDuration:duration delay:0 options:0 animations:^{
                cell.transform = transform;
            } completion:^(BOOL finished) {
                
            }];
            duration += 0.1;
        }
        
    }
    
    -(void)creatUI
    {
        self.myTableV = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height - 100) style:UITableViewStylePlain];
        self.myTableV.delegate = self;
        self.myTableV.dataSource = self;
        self.myTableV.tableFooterView = [[UIView alloc]init];
        [self.view addSubview:self.myTableV];
    }
    
    -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    {
        return 5;
    }
    
    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        static NSString *celliden = @"CELLS";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:celliden];
        if (!cell) {
            cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:celliden];
        }
        cell.textLabel.text = [NSString stringWithFormat:@"%ld",(long)indexPath.row];
        cell.backgroundColor = [[UIColor blackColor]colorWithAlphaComponent:0.6];
        return cell;
    }

    仅做记录!

  • 相关阅读:
    Linux内存运维操作及常用命令
    Quartz定时任务
    Spark DataSource Option 参数
    Hadoop HDFS命令
    Java,Scala:JDBCUtil,MySqlUtil,PhoenixJDBC
    RedisUtil,Redis工具类
    通过脚本本地下载Jar包
    Redis五种数据类型-设置key的过期时间
    spark整合Phoenix相关案例
    Spark Dataset DataFrame空值null,NaN判断和处理
  • 原文地址:https://www.cnblogs.com/hero11223/p/8137194.html
Copyright © 2011-2022 走看看