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

iOS UITableViewCell使用详解

cell自带的自动排序控件 注意:要让cell实现拖动排序的功能,除了上面设置为YES,还需实现代理中的如下方法: -(BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath...@property (nonatomic) UITableViewCellAccessoryType    accessoryType;  设置附件视图的风格(cell最右侧显示的视图) 枚举如下:...@property (nonatomic) UITableViewCellAccessoryType    editingAccessoryType;  cell编辑时的附件视图风格 @property...(nonatomic, retain) UIView                 *editingAccessoryView;   cell编辑时的附件视图 @property (nonatomic...; 设置选中状态时的图片 @property (nonatomic) BOOL              hidesAccessoryWhenEditing; 设置编辑的时候是否隐藏附件视图 学习使用

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

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

    因为跟UITableView、UICollectionView等的滑动优化有关,就顺便总结一下会影响UITableView、UICollectionView等视图滑动流畅的因素。...下面就拿UITableView来举例说明: UITableView 的 cell 上显示网络图片,一般需要两步,第一步下载网络图片;第二步,将网络图片设置到UIImageView上。...3.界面中背景色透明的视图过多 为什么界面中背景色透明的视图过多会影响UITableView的流畅?...如果两个兄弟视图重合,计算的是重合区域的像素点: 结果的颜色 是 上面的视图这个像素点的颜色 + 下面这个视图该像素点的颜色 * (1 - 上面视图的透明度) 只有当透明度为1时,上面的公式变为R =...但是,如果父视图的透明Pa 不等 1,那么我们需要将这个结果颜色当做一个整体作为子视图的颜色,再去与父视图组合计算颜色,如此递推。 所以设置不透明时,可以为GPU节省大量的工作,减少大量的消耗。

    2.2K41

    iOS流水布局UICollectionView简单使用引实现结

    引 开发中我们最常看到的可能是表视图UITableView了,但其实还有一个视图也很常见,特别是一些图片、商品、视频的展示界面,用UICollectionView来展现往往会更加方便。...还可以设置为水平滚动,只需要改变布局参数的设置就可以了;UICollectionView的cell只能通过注册来确定重用标识符,什么叫注册,我们还是看代码: - (void)viewDidLoad {...*layout = [[UICollectionViewFlowLayout alloc] init]; // 设置滚动方式为水平,默认是垂直滚动 // [layout setScrollDirection...代码中注释了一行,就是用来设置滚动方向为水平的,效果如下: 同样的内容,滚动方式变化后,呈现的效果也会变化。...接下来就是对于DataSource和Delegate的设置,这和UITableView非常像,DataSource决定显示的效果,Delegate处理点击等响应,直接看代码: #pragma mark

    1.1K00

    自学Swift之路(一)UI入手之基本控件

    -46C7-96A7-77BF0FB21C66.png 创建好工程后,我们会进入这个界面 C18EA84A-89AF-4920-8824-1CF1F2CA8B8C.png 好了开始编程:写一个创建子视图的方法...1.UILabel let myLabel = UILabel(frame:CGRectMake(10,20,200,20)) myLabel.textColor = UIColor.redColor...,两种语言控件的属性是一样的,只是语法有些不一样而已,多写几个就会发现Swift都是一个套路.那好吧,简单的控件就不写了,接下来我们来写下UITableView // 5.UITableView...= self myTableView.dataSource = self self.view.addSubview(myTableView) 设置了tableView的代理...) { print("点击了单元格") } 好了,这篇文章的内容就到这里了,下一篇文章将会围绕UITableView,自定义UITableViewCell来写点可视化内容较强的东西

    2.9K110

    MyLayout&TangramKit 的重大升级!

    在上面的第1节中有介绍如何将一个容器视图的尺寸设置为自适应,而一般情况下在编写UITableViewCell的布局代码时,都将所有的子视图添加到contentView这个视图中,因此要实现UITableViewCell...要实现UIScrollView滚动时,只需要在一个滚动视图内添加一个布局视图,然后将所有其他子视图都添加到这个布局视图中去,这个和上面的AutoLayout的处理方式是一样的,最后将布局视图的尺寸自适应属性设置为...因此如果想使用布局视图的尺寸自适应功能,那么在将布局视图的尺寸设置为wrap后,就可以像使用UILabel那样不用去设置布局视图的宽度约束和高度约束了。比如有两个兄弟视图A,B。...因为布局视图重载intrinsicContentSize方法,因此当将某个布局视图作为UITableViewCell的子视图时如果想使用布局视图的尺寸自适应的能力,只需要将布局视图的尺寸设置为wrap即可...,然后将布局视图添加到其他视图中去,不需要再为布局视图设置宽度和高度约束了,也不再限制只能将布局视图添加到contentView中了,也不再需要重载特定的方法了,就相当于将一个布局视图当做UILabel

    2.1K20

    iOS自动布局框架之Masonry

    在项目中设置的AutoLayout约束,起到对视图布局的标记作用。设置好约束之后,程序运行过程中创建视图时,会根据设置好的约束计算frame,并渲染到视图上。...() 更新约束 equalTo() 参数是对象类型,一般是视图对象或者mas_width这样的坐标系对象 mas_equalTo() 和上面功能相同,参数可以传递基础数据类型对象,可以理解为比上面的...需要设置tableView的rowHeight属性,这里设置为自动高度,告诉系统Cell的高度是不固定的,需要系统帮我们进行计算。...然后设置tableView的estimatedRowHeight属性,设置一个估计的高度。(我这里用的代理方法,实际上都一样)。...其原理是:在tableView被创建之后,系统会根据estimatedRowHeight属性设置的值,为tableView设置一个估计的值。

    1.1K60

    iOS的MVC框架之控制层的构建(下)

    一般情况下不需要添加特殊的代码,这里一再强调的就是: 一定要在这里把各种控件视图中的delegate以及dataSource设置为nil!...一定要在这里把各种控件视图中的delegate以及dataSource设置为nil! 一定要在这里把各种控件视图中的delegate以及dataSource设置为nil! 重要的事情说三遍!...莫名的问题和崩溃 懒加载视图使得我们的视图属性必须要设置为strong类型的,而且代码的实现是只创建一次。...而这个UITableView又刚好是一个可选的显示视图。同时我们又在视图控制器的dealloc中对这个UITableView的delegate做了置为nil的处理。...等几个默认的视图属性,一般情况下如果我们不定制UITableViewCell的话那么就可以在UITableView的delegate或者dataSource的回调处理中直接将数据模型的数据设置到这些属性上

    4.4K30

    客户端骨架屏详解

    调用showSkeleton方法,对属性skeletonable为true的视图进行遍历,找到其最上层的、skeletonable为true的子View,然后创建skeletonLayer添加到上面,构成骨架图...简单的说,在显示占位的时候,将tableView的代理设置为通过某个对象,这个对象根据cell的Idenfier创建cell并添加占位显示。...Somo 同样是扩展UIView,添加属性somoContainer,表示占位视图的容器视图,其中每个占位区域都是一个SomoView。...]; 3,第三步,设置animatedStyle属性 在需要动画的view上,将属性animatedStyle设置为TABTableViewAnimationStart,不需要动画的view不用做额外的操作...loadStyle,设置为需要的类型,不需要动的组件不用做额外的操作; (可选)新增属性tabViewWidth,其为动画开启时该组件的宽度,有较为合理默认值; typedef enum { TABViewLoadAnimationDefault

    4.1K10

    iOS开发中行高灵活可变的UITableView的性能优化

    iOS开发中行高灵活可变的UITableView的性能优化 一、UITableView的构建原理         在新闻类,电商类等应用中,应用着大量的图文混排视图,在表视图UITableView中,...二、对UITableView可变行高的计算方式进行优化         通过前面的分析,可以理解如果将复杂的计算代码写在heightForRowAtIndexPath方法中,代价将是非常惨重的。...我个人更倾向将行高数据封装进cell的数据模型Model中。         通过优化,可以有效的减少重复的高度计算,这也是我原先处理此类问题的主要方式。...在iOS7系统之后,UITableView类中增加了一个estimatedRowHeight属性,顾名思义,这个属性是设置UITableViewCell中的大约行高值。...分区为视图的设置方式与头视图一样。

    2K20

    《Motion Design for iOS》(十五)

    比如说,iOS app中的状态栏是一个长且瘦的视图,处于屏幕的顶端,并且状态栏目中的每个物体(时间、电池指示器、信号强度指示器等等)都是状态栏视图中的其它视图。...这些是为某些功能或特性特定的特殊的UIView对象。包括作为界面按钮的UIButton、用来显示图片的UIImageView、显示文本的UILabel和显示列表的UITableView。...运营商图像视图(苹果控制) wifi信号强度视图(苹果控制) 当前时间视图(苹果控制) 电池等级视图(苹果控制) “汉堡包”菜单按钮 标题栏中的标题标签 改变子板的按钮 一个UITableViewCell...视图,用来包含UITableView中一行的元素 UILabel中的帖子标题 评论数量UIButton,由一个评论气泡图和评论的数量组成 显示帖子URL的UILable UILabel中显示帖子的点值和子板...UIView对象有很多的职责,其中之一就是事件处理,即响应触摸事件。如果你想的话你界面中的所有视图都可以响应触摸事件,或者你可以指定只有特定的视图会在用户触摸它们时响应。

    85640

    iOS 9 Storyboard 教程(一下)

    回到storyboard然后选中Table View Controller(确保你选的是实际的视图控制器而不是它里面的某一个视图).在Identity inspector里,设置它的Class是PlayersViewController...view)是iOS9新加入的,它可以很容易的布局视图的集合样式. ---- 拖拽一个ImageView到cell并把它放到右侧,在Size Inspector里设置它宽为81高为35.设置它的Mode在中心...在Attributes inspector中,设置Name标签的tag值为100,Game标签的tag值为101,以及Image View的tag值为102....,在Table View的Size inspector里,设置高度为60. ?...(在另一方面,将原型cell的活动连接到视图控制器上的动作是非常好的.如果在你的cell上有自定义的按钮或者其他控件,你将会这么做的) ---- 现在你已经连接了这些属性,你可以简化数据源代码.在PlayersViewController

    3.1K20

    底牌项目中上传牌谱功能之编辑标准模式

    可相比于我在项目中的做法也不一定,我用了UITableView,而且感觉将问题复杂化了。 下面说说我使用了UITableView的做法。...至于编辑页面的实现,首先是创建UITableView,tableView上的Cell使用了自定义的Cell,Cell的子视图主要是一个UITextView(用于编辑内容)、UILabel(标题)、UIButton...难点:获取UITextView中的文字  (相对于直接创建五个UITextView获取它们的text较难) 解决难点: 在创建单元格的时候为每一个单元格中的UITextView设置代理,且代理为当前视图...如果没有编辑内容那么某个text字符串就是nil,nil是不能被添加到数组中的,这是需要将为nil的字符串设置为@“”。在预览页面,如果数组中某个元素内容为@“”那么就不显示该内容。...Cell,还是比较笨的做法 ) 在预览方法中取出所有的Cell,如果Cell中的按钮被选中了就将其对应的字符串设置为@“”,代码: for (StandardCell * cell in self.tableArr

    85830
    领券