美文网首页iOS知识收集程序员iOS Developer
QQ左滑出现3个点击框的方法

QQ左滑出现3个点击框的方法

作者: 蒋昉霖 | 来源:发表于2016-03-16 13:30 被阅读417次

    这方法iOS8才出的,老是忘,还是记录一下吧

    // 写这一个方法,自动进入编辑模式,出现左滑效果
    - (NSArray<UITableViewRowAction *> *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        // UITableViewRowAction创建了活动
        /**
        typedef NS_ENUM(NSInteger, UITableViewRowActionStyle) {
            UITableViewRowActionStyleDefault = 0,
            UITableViewRowActionStyleDestructive =                 UITableViewRowActionStyleDefault,
            UITableViewRowActionStyleNormal
        } NS_ENUM_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED;
        /
        // 看得出来这三个枚举很扯淡...一个默认,一个一般,一个等于默认...
        // 回调方法里写点击事件
        UITableViewRowAction *rowAction = [UITableViewRowAction rowActionWithStyle:(UITableViewRowActionStyleNormal) title:@"乐呵拉赫" handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
            NSLog(@"来给大爷笑一个");
        }];
        
        UITableViewRowAction *rowAction2 = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"乐呵你妹" handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
            NSLog(@"doubi");
        }];
        
        UITableViewRowAction *rowAction3 = [UITableViewRowAction rowActionWithStyle:(UITableViewRowActionStyleDefault) title:@"删除" handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
            NSLog(@"删了");
        }];
        UITableViewRowAction *rowAction4 = [UITableViewRowAction rowActionWithStyle:(UITableViewRowActionStyleDestructive) title:@"111" handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
            NSLog(@"222");
        }];
        rowAction.backgroundColor = [UIColor redColor];
        rowAction2.backgroundColor = [UIColor greenColor];
        NSArray *array = @[rowAction,rowAction3,rowAction2,rowAction4];
        return array;
    }
    

    这个方法里面,左拉框会根据你内部的文字大小自适应宽度,高度与cell等宽
    UITableViewRowAction一共有三个可变属性,文字,背景色和毛玻璃效果

    @property (nonatomic, readonly) UITableViewRowActionStyle style;
    @property (nonatomic, copy, nullable) NSString *title;
    @property (nonatomic, copy, nullable) UIColor *backgroundColor; // default background color is dependent on style
    @property (nonatomic, copy, nullable) UIVisualEffect* backgroundEffect;
    

    好了,苹果每次更新基本都能提供一些最近流行的,比较好用的方法属性的,记录下来吧

    相关文章

      网友评论

        本文标题:QQ左滑出现3个点击框的方法

        本文链接:https://www.haomeiwen.com/subject/iamqlttx.html