/GroupPlatoonButton

组排按钮封装

Primary LanguageObjective-C

GroupPlatoonButton

组排按钮封装 一个视图 功能是可以创建组排按钮

金卡,银卡,白金卡,和下面的户型,季节这些就是组排按钮 的排版和功能 需要传入的参数有 排版数组,比如@[@1,@2,@3],这个就表示第一行有1个按钮,第二行有2个按钮,第三行有三个按钮

然后按钮尺寸,cgsize类型 按钮的标题数组,如果你传入的排版数组是@[@1,@2,@3],那么你就需要传入有六个字符串成员的标题数组, 封装这个视图

把所有的按钮添加到一个视图上

然后按钮被选中的标题数组,按钮被选中的情况下字体颜色最好别一样或者背景颜色,方便观察

不用XIB跟Storyboard 我现在有一个Ctrl,我添加了你封装给我的视图 按上面任何一个按钮的时候,给我打印这个按钮的标题和被选中标题

不能有循环引用的情况出现 这个视图需要有几个方法来控制上面的按钮

1。有一个方法能够获取这个视图的frame ,不是frame,就是size,origin不需要 2.这个视图有一个方法可以取消上面所有按钮的用户交互 3.我要有一个方法,可以通过index这个参数,指定上面对应的按钮变为选中状态 上面的按钮同时被选中的个数不超过1

按钮间的行间距,列间距,边框宽度,边框颜色,圆角什么的属性在.m中设置

//1、增加功能:点击一个按钮被选中后,点击第二个按钮选中后和第一个被选中的按钮以动画的形式互换位置,换完之后将两个按钮的选中取消 /** * 最简单的动画方法 * * @param NSTimeInterval 动画完成需要的时间,单位秒 * * @return 无 */ [UIView animateWithDuration:0.5 animations:^{ //动画即将完成时的视图状态 } completion:^(BOOL finished) { //动画完成后需要执行的代码块 }];

//2.增加功能:按钮双击删除,并且被删除的按钮如果在右边还有按钮,将右边的按钮向左移填补空缺,同时修改View内部的排版数组,删除该按钮在标题数组中对应的标题,双击响应状态UIControlEventTouchDownRepeat

//3.增加功能:在每一行排阻按钮的最左边增加一个显示加号的按钮,当我点击加号按钮时,该按钮对应行最右边增加一个按钮,标题随意,同时修改View内部的排版数组,并将标题添加到标题数组的对应位置中