button点击问题

button点击问题

-(void)addScrollView{

    scroll=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 414, 40)];

    scroll.contentSize=CGSizeMake(100*newsarray.count, 40);

    scroll.contentOffset=CGPointMake(0, 0);//使当前页面显示在第一页

    scroll.backgroundColor=[UIColor magentaColor];

    scroll.showsHorizontalScrollIndicator=false;//隐藏水平方向的光标

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

        UIButton*btn=[[UIButton alloc]initWithFrame:CGRectMake(i*100, 0, 100, 50)];

        NSString *btnTitle =[newsarray objectAtIndex:i];//将数组里的内容赋给i  objectAtIndex通过索引获取对象

        [btn setTitle:btnTitle forState:UIControlStateNormal];

        [btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

        //添加响应方法

        [btn addTarget:self action:@selector(btnAction:) forControlEvents:UIControlEventTouchUpInside];

        btn.tag=10000+i;//给button按钮加标签 便于区分

        [scroll addSubview:btn];

        /*

        if (i==0) {

            btn.layer.borderColor=[UIColor whiteColor].CGColor;

            btn.layer.borderWidth=2.0;

            btn.layer.cornerRadius=5.0;

        }*/

    }

    [self addSubview:scroll];

}

//实现button按钮的响应方法:点击button时会有点击效果

-(void)btnAction:(UIButton*)button{

    button.layer.borderColor=[UIColor whiteColor].CGColor;

    button.layer.borderWidth=2.0;

    button.layer.cornerRadius=5.0;

    

    for (UIButton*items in scroll.subviews) {

        if (items.tag>=10000 && items.tag<=10000+newsarray.count&&(items.tag!=button.tag)) {

            button.layer.borderWidth=0;

        }

    }

}

加上scroll视图遍历之后 点击方法就实现不了了为什么 跟老师的代码一样啊

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
imoocLovers 2018-07-13 11:41:53

首先检查下运行成功后添加在scrollView上的button是否正常显示,将[self addSubview:scroll];放在生成button的for循环的前面试一下。祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS进阶:界面优化与数据存储
  • 参与学习       516    人
  • 提交作业       158    份
  • 解答问题       637    个

本路径采用基础+案例方式,助你解开对界面优化、数据储存、屏幕适配的疑惑。6小时团购项目实战加最新版本Swift讲解,让你掌握更多iOS开发技巧。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师