• 用button 属性来保存字符串地址


    我用到for循环创建button  通过点击不同的按钮拿到每个button对应的链接地址,因为button的个数也是通过后台数据返回。上代码:

    //保存到数组

       _array = [Article mj_objectArrayWithKeyValuesArray:dic[@"data"]];

    //显示隐藏

           BOOL show = dic[@"show"];

            NSLog(@"%@",_array);

            for (Article *article in self.array) {

                _article = article;

                CGFloat with = article.width;

                CGFloat height = article.height;

    //for循环创建button

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

                    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

                    button.tag = i;

                    [button setTitle:@"按钮" forState:UIControlStateNormal];

                    button.frame = CGRectMake(kSWidth-kSWidth*with, kSHeight - kSWidth*height*i-kSWidth*height-kTabBarHeight, kSWidth*with, kSWidth*height);

                   button.adjustsImageWhenHighlighted = NO;

                    [button sd_setImageWithURL:[NSURL URLWithString:[_array[i]imgUrl]] forState:UIControlStateNormal];

                    [button setBackgroundColor:[UIColor clearColor]];

                   [button addTarget:self action:@selector(resignButton:) forControlEvents:UIControlEventTouchUpInside];

                   [button setTitle:[_array[i]title] forState:UIControlStateNormal];

    //用restorationIdentifier来记录每个button的url

                   button.restorationIdentifier = (NSString *)[_array[i] url];

    //                  [button setRestorationIdentifier:[self.array[i]url]];

                    if (show==YES) {

                        button.hidden = NO;

                    }else{

                        button.hidden = YES;

                    }

                   

                   [self.view addSubview:button];

                }

            }

    //点击事件

    - (void)resignButton:(UIButton *)sender{

        

    //    sender.highlighted = NO;

         NSLog(@"%ld",sender.tag);

        

           //字符串替换  赋值

        NSString *informString = sender.restorationIdentifier;

      //跳转操作就行了

      } 

  • 相关阅读:
    vs编译器好多下划波浪线但不报错
    scala学习——(1)scala基础(下)
    scala学习——(1)scala基础(上)
    未能正确加载包“Microsoft.Data.Entity.Design.Package.MicrosoftDataEntityDesignPackage(转)
    如何完全卸载VS2010(亲自体验过) (转)
    2_C语言中的数据类型 (十)数组
    C++ STL 学习笔记__(8)map和multimap容器
    opencv配置(转)
    2_C语言中的数据类型 (九)数组
    郑捷《机器学习算法原理与编程实践》学习笔记(第五章 梯度寻优)5.2 Logistic梯度下降法
  • 原文地址:https://www.cnblogs.com/whx060900/p/11205072.html
Copyright © 2020-2023  润新知