按钮显示不正常

按钮显示不正常

http://img1.sycdn.imooc.com/climg//59800fe00001282e03760187.jpg

http://img1.sycdn.imooc.com/climg//59800fe0000188ab03820339.jpg

http://img1.sycdn.imooc.com/climg//59800fe00001fa3a10130586.jpg

选项区 我用if来控制换行 为什么换行后view上只显示 if创建的按钮而不显示else中创建的按钮 但是遍历font的时候都能遍历出来 在else中随便加一句NSLog语句都能 输出证明程序进入了else 中 那为什么view上不显示按钮啊 按钮也不应该会被覆盖啊

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

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

1回答
Tender10 2017-08-01 14:01:36

这样的应该通过for循环遍历来实现更加便捷,如下所示:

//九宫格算法 创建按钮
    for (int i=0; i<modal.options.count; i++) {
        
        //计算Frame
        //计算获取一组数字  0 1 2 3 4 5 6
        //列号
        int colNum=i%7;
        //行号
        int rowNum=i/7;
        
        //计算间距
        CGFloat optBtnW = 44;
        CGFloat optBtnH = optBtnW;
        CGFloat optXYMargin=(self.view.frame.size.width-optBtnW*7)/(7+1);
        CGFloat optBtnX = optXYMargin+colNum*(optXYMargin+optBtnW);
        CGFloat optBtnY = optXYMargin+rowNum*(optXYMargin+optBtnH);
        
        //创建按钮 并且赋值给Frame
        UIButton *optBtn=[UIButton buttonWithType:UIButtonTypeCustom];
        optBtn.frame=CGRectMake(optBtnX, optBtnY, optBtnW, optBtnH);
        
        //添加到界面上
        [self.optionView addSubview:optBtn];
 }


  • 提问者 慕粉1330426222 #1
    用什么方法将选项区 点击的文字显示到答案区上
    2017-08-01 16:17:07
  • Tender10 回复 提问者 慕粉1330426222 #2
    同理,在选项区域点击按钮的时候,先通过按钮的currentTitle属性获取当前按钮的文字,然后将这个文字赋值给答案按钮,并且将选项区域的按钮文字隐藏,通过hidden属性。
    2017-08-01 16:34:00
  • 提问者 慕粉1330426222 回复 Tender10 #3
    我的答案按钮是在一个方法中创建 这样怎么赋值给答案按钮啊 文字影藏我使用的是alpha = 0 来影藏的
    2017-08-01 16:44:50
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

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

在线咨询

领取优惠

免费试听

领取大纲

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