关于UITableView的一些老是忘记的小杂碎
1:如何取消单元格的选中状态
简简单单的一句
[TableView deselectRowAtIndexPath:[TableView indexPathForSelectedRow] animated:YES];解决。
2:通知撤销
通知中心不会保留(retain)监听器对象,在通知中心注册过的对象,必须在该对象释放前取消注册。否则,当相应的通知再次出现时,通知中心仍然会向该监听器发送消息。因为相应的监听器对象已经被释放了,所以可能会导致应用崩溃
//通知中心提供了相应的方法来取消注册监听器
- (void)removeObserver:(id)observer;
- (void)removeObserver:(id)observer name:(NSString *)aName object:(id)anObject;
//一般在监听器销毁之前取消注册(如在监听器中加入下列代码):
- (void)dealloc {
//[super dealloc]; 非ARC中需要调用此句
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
3.slider
[slider setThumbImage:[UIImage imageNamed:@"sc_sliderBtn"] forState:UIControlStateNormal];
自定义滑块的大小--需要重写父类的下方法:
-(CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value {
rect.origin.x=rect.origin.x-10;
rect.size.width=rect.size.width+20;
return CGRectInset([super thumbRectForBounds:bounds trackRect:rect value:value],10,10);
}
接下来是滑动时覆盖的图或者颜色设置:
UIImage *image = [[UIImage imageNamed:@"sc_slider"] resizableImageWithCapInsets:UIEdgeInsetsZero];//图片模式,不设置的话会被压缩
[slider setMinimumTrackImage:image forState:UIControlStateNormal];//设置图片
//[slider setMinimumTrackTintColor:[UIColor redColor]];//设置颜色
然后是未覆盖的图或颜色设置:
UIImage *image2 = [[UIImage imageNamed:@"sc_slider2"] resizableImageWithCapInsets:UIEdgeInsetsZero];//图片模式,不设置的话会被压缩
[slider setMaximumTrackImage:image2 forState:UIControlStateNormal];//设置图片
//[slider setMaximumTrackTintColor:[UIColor lightGrayColor]];//颜色设置
4.删除单元格
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
}
// 自定义左滑显示编辑按钮
-(NSArray<UITableViewRowAction*>*)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewRowAction * rowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:NSLocalizedString(@"删除", nil) handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
NSLog(@"删除第%d行",indexPath.row);
}];
rowAction.backgroundColor = rgb(0xf1, 0xf1, 0xf1);//改变背景色
[[UIButton appearanceWhenContainedInInstancesOfClasses:@[[ShuSheCollectViewController class]]] setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
NSArray *arr = @[rowAction];
return arr;
}
关于UITableView的一些老是忘记的小杂碎的更多相关文章
- useradd命令老是忘记的参数
useradd有些参数老是忘记,是用的少还是不熟练呢?记录下吧 [root@svn ~]# useradd --help 用法:useradd [选项] 登录 useradd -D useradd - ...
- 一些用过的我常忘记的小知识(web前端)
背景图片固定:background-attachment:fixed 将图片的尺寸从中心点开始改变:backgroun-position:center background-size: ** 旋转 ...
- FP error code老是忘记的看这里:只给出最常用的几个。
把常见的几个记牢,不要在比赛时纠结. 错误2:输入文件未找到. 错误106:数据读入的格式错误,往往是读入语句出错. 错误200:被零除. 错误201:范围检查错误,数组越界. 错误202:栈溢出. ...
- 对拍老是忘记的看这里:bat代码
需要写三个程序,makedata.exe 产生测试数据, program1.exe 是你要检测的程序,program2.exe 往往是一个正确但效率不高(暴力的居多)的程序. 代码很简单,稍作解释:l ...
- UITableView的性能优化10个小技巧
通常你会发现一个图片类的app会在一个imageView上做下面这些事情: 1 下载图片(主要的内容图片+用户头像图片)2 更新时间戳3 展示评论4 计算动态的cell的高度 Tip#1 学习 ...
- Angular 学习笔记 (久久没有写 angular 常会忘记的小细节)
由于经常跑去写后端, 而且一些就几个月...很多 ng 的东西就忘掉了. 写在这里方便复习呗. 1. async pipe 没有 resolve 前返回的值是 null 2 view componen ...
- eclipse项目环境搭建(做了好多遍,老是忘记,以此文帮助记忆)
今天把eclipse的环境搭建好(不能用myeclipse好忧伤). 要求: 1.在svn上管理项目,要下载svn插件. 2.是web所以要用到tomcat插件. 3.将项目运行起来. 流程: ecl ...
- 很实用且容易忘记的小命令 for Linux(更新中...)
系统相关 # 系统安装日期 sudo tune2fs -l /dev/sda1 |grep create # 查看centos版本命令 rpm -q centos-release #查看centos版 ...
- xz 解压缩命令,老是忘记
.tar.xz的解压命令 $ xz -d ***.tar.xz $ tar -xvf ***.tar 或者 $ tar xvJf ***.tar.xz
随机推荐
- JS 中 ~~符号
它被用作一个更快的替代 Math.floor() . 参考:http://rocha.la/JavaScript-bitwise-operators-in-practice
- [转] React之Immutable学习记录
从问题说起:熟悉 React 组件生命周期的话都知道:调用 setState 方法总是会触发 render 方法从而进行 vdom re-render 相关逻辑,哪怕实际上你没有更改到 Compone ...
- PyTorch中的backward [转]
转自:https://sherlockliao.github.io/2017/07/10/backward/ backward只能被应用在一个标量上,也就是一个一维tensor,或者传入跟变量相关的梯 ...
- 常用js正则表达式大全
常用js正则表达式大全.一.校验数字的js正则表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和 ...
- win7自带截屏便签 打开命令
win7自带截屏 1.win+r 2.SnippingTool.exe 打开 便签 1.win+r 2.StikyNot.exe 打开 查本机ip 1.win+r 2.cmd 3.ipco ...
- 使用impala对kudu进行DML操作
将数据插入 Kudu 表 impala 允许使用标准 SQL 语句将数据插入 Kudu 插入单个值 创建表: CREATE TABLE my_first_table ( id BIGINT, name ...
- BZOJ1503 [NOI2004]郁闷的出纳员 splay
原文链接http://www.cnblogs.com/zhouzhendong/p/8086240.html 题目传送门 - BZOJ1503 题意概括 如果某一个员工的工资低于了min,那么,他会立 ...
- python必看经典书籍:笨办法学python
书评: 感谢作者和译者,很好的手把手的一个新手编程体验书,消除编程物质恐惧感,在线看的liam huang翻译的版,不确定看的是第几版,有一些加分题没有做,第五十题黑手党外星人飞船做起来有点压力,准备 ...
- 20165235 实验一 Java开发环境的熟悉
20165235 实验一 Java开发环境的熟悉 课程:JAVA程序设计 姓名:祁瑛 学号:20165235 指导老师:娄嘉鹏 实验日期: 2018.4.2 实验内容:java开发环境的熟悉 一,实验 ...
- 大数据技术 - 通俗理解MapReduce之WordCount(三)
上一章我们编写了简单的 MapReduce 程序,掌握这些就能编写大多数数据处理的代码.但是 MapReduce 框架提供给用户的能力并不止如此,本章我们仍然以上一章 word count 为例,继续 ...