#import "ViewController.h"

#define width_w     [UIScreen mainScreen].bounds.size.width

#define height_h     [UIScreen mainScreen].bounds.size.height

#define PRO_W(width)  width_w*(width/320.0)

#define PRO_H(height)  height_h*(height/480.0)

@interface ViewController (){

NSMutableArray *_titleArr;

UIView *_view;

UIButton *_btn2;

}

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

self.view.backgroundColor = [UIColor grayColor];

_titleArr = [[NSMutableArray alloc]initWithObjects:@"上架时间",@"价格",@"销量",nil];

//    背景View

_view = [[UIView alloc]initWithFrame:CGRectMake(0, 64, width_w, PRO_W(35))];

_view.backgroundColor = [UIColor whiteColor];

[self.view addSubview:_view];

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

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

btn.tag = i;

[btn setTitle:[_titleArr objectAtIndex:i] forState:UIControlStateNormal];

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

btn.titleLabel.font = [UIFont systemFontOfSize:13];

btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;

btn.frame = CGRectMake((width_w/3)*i,0,width_w/3, PRO_W(35));

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

[_view addSubview:btn];

UIView *lineView = [[UIView alloc]initWithFrame:CGRectMake((width_w/3)*i, PRO_W(5), 1,  PRO_W(25))];

lineView.backgroundColor = [UIColor grayColor];

[_view addSubview:lineView];

}

}

-(void)clickBtn:(UIButton *)btn {

if(_btn2== btn) {

//            //本次点击的按钮设为红色

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

} else{

//本次点击的按钮设为红色

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

//将上次点击过的按钮设为黑色

[_btn2 setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];

}

_btn2= btn;

}

55.UIbutton点击切换颜色的更多相关文章

  1. vue点击切换颜色限制个数(用了mui框架)

    vue点击切换颜色 只能点击一个 <!doctype html> <head> <meta charset="UTF-8"> <title ...

  2. Swift - 获取、改变按钮的标题文本(UIButton点击切换title)

    在开发中,我们常常需要动态地改变按钮标签文字,使用 setTitle() 函数就可以了.有时我们需要在几个标题间切换,比如下面样例所示,按钮点击后按钮文字会在"播放""暂 ...

  3. vue实现简单的点击切换颜色

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. ios中UIButton选中状态切换

    关于UIButton的事件枚举有许多,平时用的少所以很多的都不是很清楚,今天了解了下,看了以前的代码,觉得在UIButton选中时操作写了许多冗余代码,而忽略了UIButton一个很重要的属性,如下: ...

  5. 仿美团外卖,饿了吗 两个ListView联动,左边点击切换右边,右边滑动切换左边

    先上效果图: 实现思路: 1.先说右边标题: 首先,右边的数据源集合中的Javabean中含有三个属性name,type,title,而每个条目中会默认含有一个标题. 如果这是第一个条目,就让标题显示 ...

  6. 纯css就能实现可点击切换的轮播图,feel起来很丝滑

    前言 轮播图经常会在项目里用到,但是实际上用到的轮播图都是比较简单的,没有复杂的特效,这个时候如果去引入swiper那些库的话,未免就有点杀鸡焉用牛刀了. 所以不如自己手写一个,而今天我要分享的一种写 ...

  7. jquery——左右按钮点击切换一组图片功能

    一.最终效果 二.功能分析 1.需求分析 点击左边pre按钮,显示前面三个图片,点击右边的next按钮,显示后面的一组(三个)图片.初始化只显示next按钮,到最后一组只显示pre按钮,中间过程两按钮 ...

  8. jquery插件jquery.LightBox.js之点击放大图片并左右点击切换图片(仿相册插件)

    该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现目前较为流行的点击放大图片并左右点击切换图片的效果,您可以根据自己的实 ...

  9. jquery - 通过点击切换文字内容

    今天要写一个简单的显示/隐藏效果,本以为是挺简单的事儿,没想到还真因为基本功不扎实遇到了问题,这里跟大家分享一下. 百度了很多方法,精简能用的干货实在太少,最后还是通过去查jq的官方api才找到了解决 ...

随机推荐

  1. js,JavaScript,a标签onclick传递参数不对,A标签调用js函数写法总结

    错误示例: <a href="javascript:waterLineEdit(${goods.goods_id})" >修改 </a> <!-- 浏 ...

  2. MySQL的四种不同查询的分析

    1.前置条件: 本次是基于小数据量,且数据块在一个页中的最理想情况进行分析,可能无具体的实际意义,但是可以借鉴到各种复杂条件下,因为原理是相同的,知小见大,见微知著! 打开语句分析并确认是否已经打开 ...

  3. pycurl提示load dll failed 找不到注册程序

    原因:python虽然是2.7的 但有小版本区别 建议使用2.7.8

  4. ios 获取当前时间

    1.第一种返回的时间是一个整个的字符串. NSDate *timeDate = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateForm ...

  5. 我的第一个WCF程序

    写WCF,VS需要一管理员身份呢启动,否则服务无法访问. model层 using System; using System.Runtime.Serialization; namespace MyMo ...

  6. 解决input 有readonly属性 各个浏览器的光标兼容性问题

    <input type='text' readonly unselectable='on' onfocus='this.blur()'/> 目标:input 只能读,但是在ie.火狐浏览器 ...

  7. CSS 图片居中

    } .left-logo a { height: 100px; width: 55px; display: block; } .left-logo a img{ height: ; width: 55 ...

  8. ----转载----【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    关于 chrome 扩展的文章,很久之前也写过一篇.清除页面广告?身为前端,自己做一款简易的chrome扩展吧. 本篇文章重在分享一些制作扩展的过程中比较重要的知识及难点. 什么是 chrome 扩展 ...

  9. prometheus 通过企业微信接收告警

    准备工作 step 1: 访问网站 注册企业微信账号(不需要企业认证). step 2: 访问apps 创建第三方应用,点击创建应用按钮 -> 填写应用信息: prometheus 配置: # ...

  10. 5I - 汉诺塔IV

    还记得汉诺塔III吗?他的规则是这样的:不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到小盘的上面.xhd在想如果我们允许最大的盘子放到最上面会怎么样 ...