首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS开发-1.UITableView你会用吗?

前一段时间,公司招聘了一个新员工,界面做出来了,但是很卡,我看完他写的代码,发现没有对UITableViewCell进行循环使用,而且在UITableView代理方法中,创建了很多并没有什么用的对象,一些调用频繁的方法也没有很好地处理...Paste_Image.png 这个只注册一次,所以在ViewDidLoad中注册 好处:不用判断缓存池子的cell是否为空,只要注册了cell,那么创建出来绝对有值。...Paste_Image.png 系统自带的方法:只能控制cell的颜色选中为灰色,或者没有。在iOS6之前是可以实现的 ?...Paste_Image.png 如果想自定义选中cell的背景颜色:(也可以设置图片,UIImage等等,都可以设置) ?...Paste_Image.png 如果设置不选中cell的背景颜色(两种方法) cell.backGroundColor = [UIColor redColor]; 另一种设置方法cell.backgroundView

83430

iOS UITableViewCell使用详解

iOS中UITableViewCell使用详解 - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString...注意:要让cell实现拖动排序的功能,除了上面设置为YES,还需实现代理中的如下方法: -(BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath...,可以在子类中重写 - (void)didTransitionToState:(UITableViewCellStateMask)state; cell状态已经转换时调用的函数,可以在子类中重写,状态枚举如下...< 0,//编辑状态     UITableViewCellStateShowingDeleteConfirmationMask   = 1 << 1//确认删除状态 }; 注意:下面这些方法已经全部在IOS3.0...@property (nonatomic, retain) UIColor  *selectedTextColor; 设置选中状态下的字体颜色 @property (nonatomic, retain

1.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【IOS开发基础系列】Table View开发专题

    第三种: 当背景横向为 有规律的 色变的 时候可以取背景图片 产生出一个color ok  fuelsTabelView.separatorColor = [UIColor colorWithPatternImage...的宽度是320高度是44         因为在iOS5的时候, 默认Cell就是320宽(那阵屏幕就是那么宽,然后高度是44) 现在是在layoutSubViews 重新绘制这个cell的宽度和高度,...其中的特例包括背景色,它的alpha值应该为1(例如不要使用clearColor);图像的alpha值也应该为1,或者在画图时设为不透明。...解决的办法就是在bitmap context里先将其画一遍,导出成UIImage对象,然后再绘制到屏幕,详细做法可见《利用预渲染加速iOS设备的图像显示》。.../details/25467617 (good)复杂TableView在iOS上的性能优化 http://www.2cto.com/kf/201312/262041.html (ok)提升UITableView

    38220

    iOS 10.3 Label高度计算问题 (UITableView+FDTemplateLayoutCell)1.前言2.问题发现3.解决问题4.列举下解决问题的方法

    (难道大家都没发现还是大家的都没问题,当然也有可能没用UITableView+FDTemplateLayoutCell 的),在UITableView+FDTemplateLayoutCell issues...究其原因好像iOS 10.3 会加一个宽一个高约束(Looks like iOS 10.3 has two additional constraints there for width/height),...label显示的是没问题的,但是刷新一下就不行了,所以我想到在刷新重新算高度之前刷新下约束,这样就可以知道label的最大宽度限制了,当然我也不想在所以的cell 里面处理 所以在UITableView...if (cell.accessoryView) { contentViewWidth -= 16 + CGRectGetWidth(cell.accessoryView.frame); } else...2.png 在同样的地方替换掉layoutIfNeeded,换成加左右约束, 记得后面加上priorityLow ,这样是避免跟cell 里面手动加的约束起冲突,这样就技能满足nib cell 也能满足纯代码

    1.7K40

    iOS自定义UICollectionView和UITableView单元格选中样式

    iOS中,UICollectionView和UITableView已经有系统默认选中颜色设置,但是只有无色,蓝色,灰色,三种颜色设置,如果想要其他的颜色效果,我们可以自由自定义设置。...前言 先观赏一下典型的UITableView控件案例 ? image.png 典型的UICollectionView控件案例 ?...UITableViewCellSelectionStyleNone ; //蓝色 cell.selectionStyle = UITableViewCellSelectionStyleBlue ; //灰色...lastObject]; } cell.cellMdl = [self.tableItemArr objectAtIndex:indexPath.row]; //设置选中背景色...cell.selectedBackgroundView.backgroundColor = [UIColor groupTableViewBackgroundColor]; return cell; } 3.单元格自定义选中效果方案(二) 通用方案: [x] 在自己自定义的

    3.1K30

    freetype的交叉编译及在嵌入式linux上的简单使用及改变字体背景和颜色

    但是freetype占的资源可能比较大,即便裁剪过也可能90多k吧,在资源受限的单片机环境中不推荐,还不如直接取字模来得快,在资源丰富的嵌入式linux板上可以玩一下。...接下来测试下在嵌入式linux上的简单使用,图像显示使用linux上的fb0: 大体使用步骤: int main() { FT_Library library; FT_Face face; FT_Error...bitmap_left,var.yres - slot->bitmap_top); pen.x += 64*32; //pen.y += 64*32; } return 0; } 如何改变字体的背景呢...,clear一个区域,填充下背景色即可,或者如下图所示背景色的地方。...如何改变字体的颜色呢,关键在这里: ? 如果你的屏幕显示的图像是镜像翻转的,如何调整让显示正确呢,如下,调整下x,y坐标即可。 ?

    5.1K10

    iOS开发中UITableViewCell点击时子视图背景透明的解决方法

    iOS开发中UITableViewCell点击时子视图背景透明的解决方法         在做iOS项目的开发中,UITableView控件的应用十分广泛。...在进行自定义UITableViewCell时,经常有小伙伴遇到这样的问题:在UITableViewCell上面添加了一个有背景颜色的子视图,当用户点击UITableViewCell或者选中UITableViewCell...时,Cell上的子视图发生了奇怪的变化,其背景色变透明了,如果添加在Cell上的子视图只是一个色块,那么我们看起来,这个子视图好像莫名其妙的消失了一样。...这时,如果用户点击或者选中了某个Cell,系统会自动将其上子视图的背景色改成透明以便统一Cell的整体背景颜色。...如果需要使用Cell的选中风格同时又不想让Cell上的子视图收到影响,我们可以继承UITableViewCell后在其中覆写父类的如下两个方法,在这些方法中重新设置子视图的背景色: //这个方法在Cell

    1.4K30

    RunLoop总结:RunLoop的应用场景(三)滚动视图流畅性优化

    (这一点,相信大家都知道,要尽量避免在主线程中执行,一般都是创建一个子线程来执行,然后再回到主线程) 2.动态计算UITableViewCell的高度,时间过久 在iOS7之前,每一个Cell的高度,...很多文章中都提到,可以使用模拟器--->Debug--->Color Blended Layers来检测透明背景色,把透明背景色改为与父视图背景色一样的颜色,这样来提高渲染速度。 ?...简单说明一下,就是屏幕上显示的所有东西,都是通过一个个像素点呈现出来的。而每一个像素点都是通过三原色(红、绿、蓝)组合呈现出不同的颜色,最终才是我们看到的手机屏幕上的内容。...在 iPhone5 的液晶显示器上有1,136×640=727,040个像素,因此有2,181,120个颜色单元。在15寸视网膜屏的 MacBook Pro 上,这一数字达到15.5百万以上。...如果两个兄弟视图重合,计算的是重合区域的像素点: 结果的颜色 是 上面的视图这个像素点的颜色 + 下面这个视图该像素点的颜色 * (1 - 上面视图的透明度) 只有当透明度为1时,上面的公式变为R =

    2.2K41

    iOS应用黑暗模式设计终极指南(附套件下载)

    在本指南中,我将逐步解释为iOS应用设计暗模式的过程。本文将重新设计WhatsApp,基于Apple的人机界面指南。 ? 在WWDC 2019大会上,苹果公布了iOS 13的所有新功能。...在所有超级令人兴奋的功能中,关于黑暗模式的部分最让我兴奋。对于那些在社交媒体上关注我的人,您可能知道我是“黑暗模式”的忠实粉丝。使用iOS 13后,人们可以选择采用深色系统外观。...03 系统背景色 根据准则,iOS的背景始终具有#000000的纯黑色。Google 则更喜欢深灰色,值为#121212。 ? 苹果将此背景称为“ 系统背景”。...系统背景分为3个级别,即主要,次要和第三级。每个按钮都有不同的颜色,iOS 13 UI Kit中提供了这些颜色。这些适用于给人以更高的层级或与众不同(或分组)内容的元素。 ?...这就是与开发人员进行“和谐”对话所需的全部知识。 05 填充颜色和灰色 iOS的准则提供了4种填充颜色(也为灰色)和6种其他灰色可供选择。它们是界面上所有元素的理想选择,例如字形(图标),UI控件等。

    3.4K10

    自定义一个浮层弹窗视图

    CoreAnimation是iOS中实现动画的框架,整个iOS中的动画(比如UIView中封装的动画、UIViewController切换时的转场动画、UITableViewCell移除增添时的动画等,...实现一个自定义弹窗视图 我们平时在开发的时候,经常会遇到这样的需求:在页面中弹出一个自定义视图,除了弹出的自定义视图之外,页面的其他位置都置灰态。比如下图这样: ?...要实现这样的效果,基本思路是: 1,新建一个弹窗背景视图,背景颜色设置为黑色,透明度设置为0.5; 2,将自定义弹窗视图加在弹窗背景视图上; 3,触发弹出弹窗视图的时候,将弹窗背景视图添加到程序的根窗口上...NormanHudView.h #import NS_ASSUME_NONNULL_BEGIN @interface NormanHudView : UIView /** 灰色背景上方的展示视图...展示浮层上的自定义提示视图的时候,我使用了UIView的动画,可以在这里实现浮层上的自定义提示视图展示时候的动画。 给浮层的背景视图添加一个点击手势,以在点击的时候移除该浮层。

    1.4K30

    TableView优化之高度缓存

    在iOS开发中,继承是完全可以完成protocol和category的功能的,那么在开发过程中多多使用继承体系可好? 需要注意的是使用继承还有很大的代价问题。...然后在.m中添加两个属性的setter、getter方法 @implementation UITableViewCell (HeightCacheCell) #pragma mark ---setter...这样的话每个不同种类的cell上的子视图是不相同的,在自动计算高度的时候对cell的布局有很高要求,所以我们一定要保证我们计算用的cell与展示用的cell是同一种cell。...事实上,有两种自动布局方式,autoResizing和autoLayout。 autoResizing是UIView的固有属性。是在IOS6之前用来实现自动布局的属性。...当然IOS6之后的autoLayout就要比他强大不少了。 事实上这个属性默认情况下是YES。当为YES时,则我们设置约束是无效的。

    2.4K30

    六天完成一个简单iOS App - 第三天

    ,居中,背景图片等。...自定义CLClearCacheCell还有一些其他的逻辑需要注意。 等设置完文字之后在禁止cell点击,如果直接禁止点击,字体颜色会被渲染成灰色,文件大小计算完毕之后在开启点击。...先显示正在计算的小菊花,等计算完毕之后关闭小菊花,显示箭头,这里有一个注意点,accessoryView比accessoryType优先级要高,所以显示箭头的时候,需要先将accessoryView至为空然后在设置...计算文件大小,显示在cell上,根据不同的大小显示不同的单位GB,MB,KB等。...)"; // 等设置完文字之后在禁止点击,如果直接禁止点击 字体颜色会被渲染成灰色 self.userInteractionEnabled = NO; /

    899110

    iOS常见问题总结(一)1 Xcode中出现的问题

    1 Xcode中出现的问题 ---- 1.Xcode7.1中关于bitcode的问题 升级到Xcode7.1后,在模拟器下编译通过,但是切换到真机编译遇到如下问题 ?...C2E64E66-27F2-4B53-AB2C-1A54ECFB524D.png xcode7.1默认bitcode为Yes,真机测试的时候不能通过的话,将Yes改为No就可以了. ----...Paste_Image.png 解决方式,修改一下对已ing的路径 ---- 3.默认点击tableViewCell后会出现灰色背景,并且不消失....解决方法: 点击UITableViewCell时,没有点击效果,在cellForRowAtIndexPath:方法中写上 cell.selectionStyle = UITableViewCellSelectionStyleNone...; 点击UITableCell时,Cell背景颜色不变,但是上面自定义的控件如:UILabel、UIImageView会变颜色 设置UILabel或UIImageView的Highlighted 然后

    70620

    iOS中TableView小技巧

    引 TableView是ios开发中经常用到的控件,这里统一记录一下开发中遇到的常用小技巧,不断探索更新,也希望大家可以告诉我更多常用的小技巧啦~一起进步。...= [[UIView alloc] init]; 2、选中列表条目后取消选中的背景颜色 不处理的情况下,选中一行后,该行会保持被选中的背景色,一般我们不希望其保持,而是一闪而过告知用户选中过就好了...{ [self.searchBar resignFirstResponder]; } 4、去掉NavigationController下的TableView顶部出现的空白区域 iOS...我们想要获取或者修改cell中的信息时,往往需要获取cell,在tableview的delegate中,我们一般只能获取到indexPath这个参数,通过以下方法可以获取到对应的cell: UITableViewCell...*cell = [self tableView:tableView cellForRowAtIndexPath:indexPath]; 7、为cell设置不同高度 常规情况下,我们的cell都是同样的高度的

    98730

    iOS常见问题总结(二)

    Paste_Image.png 4 )跟步骤 3 一样, 依然在 Buiild Settings 的 tab 里, 通过搜索, 在 “Header Search Paths " 和 " User Header...2: 默认点击tableViewCell后会出现灰色背景,并且不消失 解决方法: 1)点击UITableViewCell时,没有点击效果,在cellForRowAtIndexPath:方法中写上 cell.selectionStyle...= UITableViewCellSelectionStyleNone; 2)点击UITableCell时,Cell背景颜色不变,但是上面自定义的控件如:UILabel、UIImageView会变颜色...view_bg.backgroundColor = [UIColor clearColor]; cell.selectedBackgroundView = view_bg; 3)点击cell行时,背景颜色一闪而过...调整控制器的大小 在Xcode5上做以上的操作没有问题,这次是要在Xcode6上实现之,特记录以备用.首先新建一个storyboard文件.取名Custom.storyboard.拖动菜单添加一个TabBarComtroller

    85120

    iOS UITableView左滑操作功能的实现(iOS8-11)

    4、上面1.2和1.3中实现的方法的区别 体验上的不同就是当左滑只有一个button时,iOS 11中可以一直左滑,滑到一定程度时,会执行点击按钮的操作,iOS 11之前的不会。...考虑到代码的可复用性,自定义左滑操作的字体大小和颜色的代码不写在viewController中,而是写在UITableView和UITableViewCell的Category中,对外提供editActionTitleColor...1、iOS 8-10 设置标题颜色和字体 左滑操作后,UITableView的层级结构如下图: [4.png] 由上图可知,左滑的操作按钮是在UITableViewCell的子view,所以我们可以在UITableViewCell...代码如下: [5.png] 2、 iOS 11 设置标题颜色和字体 左滑操作后,UITableView的层级结构如下图: [6.png] 由上图可知,左滑的操作按钮是在UITableView的子view...代码如下: [7.png] 三、遇到的问题及原因分析 ------------ 1、问题是iOS 11上设置颜色有延迟,颜色有一个明显的跳变,从系统默认色跳转到我设置的颜色 有问题的代码如下: [8.png

    1.7K80

    iOS UITableView左滑操作功能的实现(iOS8-11)

    本文主要是介绍下iOS 11系统及iOS 11之前的系统在实现左滑操作功能上的区别,及如何自定义左滑的标题颜色、字体大小。...在2和3中,如果是需要适配iOS 11之前的版本,以上三个方法都需要实现。...4、上面1.2和1.3中实现的方法的区别 体验上的不同就是当左滑只有一个button时,iOS 11中可以一直左滑,滑到一定程度时,会执行点击按钮的操作,iOS 11之前的不会。...由上图可知,左滑的操作按钮是在UITableViewCell的子view,所以我们可以在UITableViewCell的category中hook掉layoutSubviews方法,找到UITableViewCellDeleteConfirmationView...三 遇到的问题及原因分析 1、问题是iOS 11上设置颜色有延迟,颜色有一个明显的跳变,从系统默认色跳转到我设置的颜色 有问题的代码如下: ?

    1.2K81
    领券