zoukankan      html  css  js  c++  java
  • 购物车界面,不同section,点击增减物品,确定取消选中的逻辑判断

    1、首先在自定义的cell中,创建两个代理方法

    @protocol shopCartDelegate <NSObject>

    -(void)shopCartDelegate:(ShopCartCell *)cell WithBtn:(UIButton *)btn;

    -(void)shopCartDelegateNum:(ShopCartCell *)cell WithBtn:(UIButton *)btn;

    @end

    @interface ShopCartCell : UITableViewCell

    @property(nonatomic,assign)id<shopCartDelegate>delegate;

    @end

    2、在viewcontroller中实现这两个代理方法

    shopCell.delegate = self;//遵循代理

     方法实现

    (1)选中和取消的代理方法

    -(void)shopCartDelegate:(ShopCartCell *)cell WithBtn:(UIButton *)btn

    {

        NSIndexPath *indexPath =[self.tableView indexPathForCell:cell];

        int couss=0 ;

        NSArray *array =self.array[indexPath.section];

        for (int i =0; i<array.count; i++) {

            ShopModel *model =array[i];   

            if (i==indexPath.row) {

                if (btn.selected) {

                    model.isSelected = @"true";  

                }else{

                   model.isSelected = @"false";

                }

            }

            if ([model.isSelected isEqualToString:@"true"]) {

                couss++;

            }

        }

    //判断section内的cell是否都被选中

        if (couss == array.count) {

            self.isonOff = NO;

        }else{

            self.isonOff = YES;

        }

        [self.tableView reloadData];

    }

    (2)增加减少

    -(void)shopCartDelegateNum:(ShopCartCell *)cell WithBtn:(UIButton *)btn

    {

        NSIndexPath *indexPath =[self.tableView indexPathForCell:cell];

        NSArray *array =self.array[indexPath.section];

        for (int i =0; i<array.count; i++) {

            ShopModel *model =array[i];

            if (i==indexPath.row) {

                if (btn.tag == 2000) {

                    model.num =[NSString stringWithFormat:@"%d",model.num.intValue+1];

                }else{

                    if (model.num.intValue == 1) { 

                    }else{

                    model.num =[NSString stringWithFormat:@"%d",model.num.intValue-1];

                    }

                }

            }

        }

        [self.tableView reloadData];

    }

  • 相关阅读:
    IOS使用正则表达式去掉html中的标签元素,获得纯文本
    iOS 拨打电话的三种方式总结
    iOS中Block的基础用法
    如何避免在Block里用self造成循环引用
    对MAC自带的SVN进行升级
    IOS开发之记录用户登陆状态
    Xcode7 添加PCH文件
    mysql upgrade
    Ubuntu下更改用户名和主机名
    mysql 查询的时候没有区分大小写的解决方案
  • 原文地址:https://www.cnblogs.com/zhanghuanan/p/5276535.html
Copyright © 2011-2022 走看看