zoukankan      html  css  js  c++  java
  • 1.3tableView向左滑动出现多个按钮操作

    //系统在iOS8以下可以参考这个网址:

    http://www.jianshu.com/p/5bb91ccc07e3?utm_campaign=maleskine&utm_content=note&utm_medium=writer_share&utm_source=weibo

    //  ViewController.m

    //  1.3tableView向左滑动出现多个按钮操作

    //

    //  Created by 张凯泽 on 16/1/3.

    //  Copyright © 2016年 rytong_zkz. All rights reserved.

    //

    #import "ViewController.h"

    @interface ViewController ()

    @property(nonatomic,strong)NSMutableArray *array;

    @end

    @implementation ViewController

    //懒加载数据

    -(NSMutableArray *)array

    {

        if (_array == nil) {

            _array = [NSMutableArray array];

            for (int i = 0; i<20; i++) {

                [_array addObject:@(i)];

            }

        }

        return _array;

    }

    - (void)viewDidLoad {

        [super viewDidLoad];

        

       

        

    }

    //-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath

    //{

    //    return YES;

    //}

    -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

    {

        return 1;

    }

    -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    {

        return self.array.count;

    }

    -(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

    {

        static NSString * Id = @"cell";

        UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:Id];

        if (cell == nil) {

            cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:Id];

        }

        NSNumber * number = self.array[indexPath.row];

        cell.textLabel.text = [NSString stringWithFormat:@"%@",number];

        return cell;

    }

    #warning iOS8 -以后可用

    #pragma mark 在滑动手势删除某一行的时候,显示出更多的按钮

    - (NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath

    {

        // 1.添加一个删除按钮

        UITableViewRowAction *deleteRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"删除" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {

            NSLog(@"点击了删除");

            // 1. 更新数据

            [self.array removeObjectAtIndex:indexPath.row];

            // 2. 更新UI

            [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];

        }];

        //2. 添加一个置顶按钮

         UITableViewRowAction *topRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"置顶" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {

         NSLog(@"点击了置顶");

        

         // 1. 更新数据

         [self.array exchangeObjectAtIndex:indexPath.row withObjectAtIndex:0];

        

         // 2. 更新UI

         NSIndexPath *firstIndexPath = [NSIndexPath indexPathForRow:0 inSection:indexPath.section];

         [tableView moveRowAtIndexPath:indexPath toIndexPath:firstIndexPath];

         }];

         topRowAction.backgroundColor = [UIColor blueColor];

        //3. 添加一个更多按钮

        UITableViewRowAction *moreRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"更多" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {

            NSLog(@"点击了更多");

            [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationMiddle];

        }];

        moreRowAction.backgroundEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];

        // 将设置好的按钮放到数组中返回

         return @[deleteRowAction, topRowAction, moreRowAction];

       

    }

    @end

  • 相关阅读:
    我的友情链接
    我的友情链接
    BuChain 介绍:视屏讲解
    2019年5月数据库流行度排行:老骥伏枥与青壮图强
    五一4天就背这些Python面试题了,Python面试题No12
    钱包:BUMO 小布口袋 APP 用户手册
    工具箱:BUMO 工具应用场景示例
    工具箱:BUMO 密钥对生成器用户手册
    开发指南:BUMO 智能合约 Java 开发指南
    钱包:BOMO 轻钱包用户手册
  • 原文地址:https://www.cnblogs.com/zkzzkz/p/5096597.html
Copyright © 2011-2022 走看看