文档章节

UITableViewCell选中背景色覆盖分割线及自定义选中背景色的问题

巡天壮我心
 巡天壮我心
发布于 2014/04/24 18:21
字数 378
阅读 483
收藏 0
最近项目中用到UITableView中cell之间要用自定义的虚线分割,然后选中cell出现淡黄色效果。按照逻辑出现自定义效果可以自己创建一个继承UITableViewCell的类,里面加上:UIView *lineView = [[UIView alloc] init];
        lineView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"CR_meetingroomlist_Line"]];
        lineView.frame = CGRectMake(17, self.frame.size.height - 1,402,1);
        [self addSubview:lineView];
然后在用到cell的这个方法里- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath加上    cell.selectedBackgroundView = [[UIView alloc] initWithFrame:cell.frame];
    cell.selectedBackgroundView.backgroundColor = [UIColor colorWithRed:250.0f/255.0f green:250.0f/255.0f blue:198.0f/255.0f alpha:1];就可以点击cell出现淡黄色效果。此时的问题出现了,其实cell.selectedBackgroundView的大小你是无法去修改的,意思是即使你修改了它还是cell的大小。所以当你选中cell时,背景色老是把你的虚线给覆盖住。如果你设置点击后就消失的话,就仿佛那条分割线在跳动的感觉,让人很不舒服。之前一直以为是cell.selectedBackgroundView不对,就一直试图修改它的大小,后来发现这是个错误。我们正确的做法很简单:meetingRoomTBView.separatorColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"CR_meetingroomlist_Line"]];在UITableView上下功夫,而不是在UITableViewCell做改变。这样的话就不会出现背景色覆盖分割线的问题了。


© 著作权归作者所有

共有 人打赏支持
巡天壮我心
粉丝 1
博文 5
码字总数 1657
作品 0
海淀
高级程序员
UITableViewCell 自定义选中颜色

1、系统内置颜色 //无色cell.selectionStyle = UITableViewCellSelectionStyleNone; //蓝色cell.selectionStyle = UITableViewCellSelectionStyleBlue; //灰色cell.selectionStyle = UITable......

常思过
2013/08/12
0
0
UITableViewCell的选中时的颜色设置

1.系统默认的颜色设置 //无色cell.selectionStyle = UITableViewCellSelectionStyleNone; //蓝色cell.selectionStyle = UITableViewCellSelectionStyleBlue; //灰色cell.selectionStyle = U......

张志浩
2012/08/08
0
1
iOS设置UITableViewCell的背景色透明和设置选中背景颜色的方法

1.设置UITableViewCell的背景色透明: 设置UIColor为clearColor: cell.backgroundColor=[UIColor clearColor]; 或者,设置颜色透明度为0: cell.backgroundColor = [UIColor colorWithWhite......

SupermanGC
2015/08/11
0
1
UITableView-的cell 自定义(高度and样式)

UITableView的强大更多程度上来自于可以任意自定义UITableViewCell单元格。通常,UITableView中的Cell是动态的,在使用过程中,会创建一个Cell池,根据每个cell的高度(即tableView:heightF...

谁家的阿毛
2014/05/12
0
0
UITableView 基本使用方法总结

首先,Controller需要实现两个 delegate ,分别是 UITableViewDelegate 和 UITableViewDataSource 2.然后 UITableView对象的 delegate要设置为 self。 3. 然后就可以实现这些delegate的一些方...

悠哉悠哉e
2012/11/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

1、Vue解决安卓4.4不兼容的问题

1.npm安装 npm install babel-polyfill--save-devnpm install es6-promise--save-dev package.json中会出现 "babel-polyfill": "^6.26.0","es6-promise": "^4.1.1", 2.main.js引入 impo......

阿K1225
9分钟前
0
0
mybatis generator 属性详解

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis......

太黑_thj
13分钟前
0
0
windows nvm 安装 node

nvm 是 node 的版本控制管理 下面是下载 nvm 的地址,选择 nvm-setup.zip 下载 https://github.com/coreybutler/nvm-windows/releases 就是下一步下一步,一键安装 基本命令有: nvm arch [32...

U_I_A_N
15分钟前
0
0
js判断字符串中是否包含某个字符串

indexOf() indexof()方法可以返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回-1。 var str = "123";console.log(str.indexOf("3") != -1);...

小星星_cjx
27分钟前
0
0
函数式组件完整例子

之前创建的组件是比较简单,没有管理或者监听任何传递给他的状态,也没有生命周期方法。它只是一个接收参数的函数。 在下面这个例子中,我们标记组件为 functional,这意味它是无状态 (没有响...

tianyawhl
30分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部