如何实现一个checkbox选择框
2015-08-03 17:30
435 查看
转载自:http://jingyan.baidu.com/article/7c6fb42860073c80642c90e9.html
在app的开发过程中,很多时候我们需要用到勾选框,特别是从其他语言转过来的童鞋,多么希望ios有个checkbox,类似下图:
但是很可惜。到目前ios8的sdk中都还没有的。但是我们该如何来实现呢?
其实这一般都是用button来实现的,具体思路是在点击前设置一个图片,点击后状态改变引起图片改变。
UIButton*checkbox=[[UIButtonalloc]initWithFrame:CGRectZero];
[self.viewaddSubview:checkbox];
checkbox.frame=CGRectMake(60,330,20,20);
[checkbox setImage:[UIImageimageNamed:@"check_off.png"]forState:UIControlStateNormal];
//设置正常时图片为 check_off.png。。。使用了storyboard拖了一个按钮的话,不需要以上代码。
[checkbox setImage:[UIImageimageNamed:@"check_on.png"]forState:UIControlStateSelected];
//设置点击选中状态图片为check_on.png
[checkbox addTarget:selfaction:@selector(checkboxClick:)forControlEvents:UIControlEventTouchUpInside];
[checkbox setSelected:YES];//设置按钮得状态是否为选中(可在此根据具体情况来设置按钮得初始状态)
实现checkboxClick方法
-(void)checkboxClick:(Uibutton*)btn{
btn.selected=!btn.selected;//每次点击都改变按钮的状态
if(btn.selected){
}else{
//在此实现打勾时的方法
}
//在此实现不打勾时的方法
}
代码就是这样了。点击后效果图
就这样了。 希望对你有所帮助。
在app的开发过程中,很多时候我们需要用到勾选框,特别是从其他语言转过来的童鞋,多么希望ios有个checkbox,类似下图:
但是很可惜。到目前ios8的sdk中都还没有的。但是我们该如何来实现呢?
其实这一般都是用button来实现的,具体思路是在点击前设置一个图片,点击后状态改变引起图片改变。
UIButton*checkbox=[[UIButtonalloc]initWithFrame:CGRectZero];
[self.viewaddSubview:checkbox];
checkbox.frame=CGRectMake(60,330,20,20);
[checkbox setImage:[UIImageimageNamed:@"check_off.png"]forState:UIControlStateNormal];
//设置正常时图片为 check_off.png。。。使用了storyboard拖了一个按钮的话,不需要以上代码。
[checkbox setImage:[UIImageimageNamed:@"check_on.png"]forState:UIControlStateSelected];
//设置点击选中状态图片为check_on.png
[checkbox addTarget:selfaction:@selector(checkboxClick:)forControlEvents:UIControlEventTouchUpInside];
[checkbox setSelected:YES];//设置按钮得状态是否为选中(可在此根据具体情况来设置按钮得初始状态)
实现checkboxClick方法
-(void)checkboxClick:(Uibutton*)btn{
btn.selected=!btn.selected;//每次点击都改变按钮的状态
if(btn.selected){
}else{
//在此实现打勾时的方法
}
//在此实现不打勾时的方法
}
代码就是这样了。点击后效果图
就这样了。 希望对你有所帮助。
相关文章推荐
- Mysql_存储功能
- magento的url中 去掉多余的目录层级
- IO重定向 > >> <
- UVa 1511 - Soju
- 2.2&2.3 Variables
- CSS3中的clip-path使用攻略
- 内存(堆)的动态申请和释放
- 1.8-抓包工具tcpdump和tshark
- PHP中try{}catch{}的具体用法详解
- leetcode-232-Implement Queue using Stacks
- 内存(堆)的动态申请和释放
- 哎哟,不错哦之玩乐动物园
- 用C语言写猜数字游戏
- C#遍历查询文本框是否为空,判断文本框是否为数字,一键清空文本框内容
- leetcode Rotate Array 旋转数组
- C++ 命名空间
- About Transaction Log
- Volley框架支持HTTPS请求。
- 【Android多媒体】NuPlayer for HTTP Live Streaming【3】
- ArcGIS教程:水文分析应用示例