QuickRearrangeTableView - 基于UITableView的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置。...YX_UITableView_IN_UITableView - UITableview嵌套UITableView案例实践(仿淘宝商品详情页实现),项目讲解。...WZFlashButton - WZFlashButton,点击后按钮里面出现水波扩散效果。 Twinkle - 为字体加上钻石版闪耀的效果。使用Swift编写。...JMRoundedCorner - UIView设置不触发离屏渲染的圆角! JMRoundedCornerSwift - swift版本:UIView设置不触发离屏渲染的圆角!...iCarousel - iCarousel是一个类,它继承于UIView。用于简化实现各种类型的旋转木马(分页滚动视图),无限轮播,iOS开发之多图片无缝滚动组件封装与使用。
ZLSwiftRefresh - swift下拉刷新/上拉加载更多,支持自定义动画,集成简单,兼容UITableView/CollectionView/ScrollView/WebView。...ReplaceAnimation.swift - 基于 @ZeeYoung欧阳哲 同学的创意下拉刷新动画实现。值得称赞还有额外增加了“取消及滚动”效果支持。...模糊效果 FXBlurView - 是一个UIView子类,支持iOS5.0以上版本,支持静态、动态模糊效果,继承与UIView的模糊特效。...FXLabel还提供了更多控件,可以对字体行距、字体间距等进行调整。 WFReader - 一款简单的coretext阅读器,支持文本选择、高亮以及字体大小选择等。...HHFlashSwitch - 一个另类的UISwitch,选择后,背景水波扩散变色效果。
stringByTrimmingTrailingCharactersInSet:[NSCharacterset whitespaceAndNewlineCharacterSet]]; NSString后连接字符串...如果需要相对自己的中心点,则需要用bound.origin来计算 UIView加外边框 reference CGFloat borderWidth = 2.0f; self.frame = CGRectInset...NSUInteger size = CGImageGetHeight(thumbImage.CGImage) * CGImageGetBytesPerRow(thumbImage.CGImage); UIImage加边框...屏蔽自动滚动效果 reference 继承UITableViewController重写 - (void)viewWillAppear:(BOOL)animated { //不调用super方法 屏蔽自动滚动...reference pod install --verbose --no-repo-update 标注代码段 reference 在OC里经常用 #pragma mark - xxxx 来分隔代码 Swift
比如一些界面中有父视图的尺寸由子视图的尺寸来确定的;还比如UIScrollView中为了能实现滚动需要根据添加到里面的子视图来调整contentSize的尺寸;又比如某些UITableViewCell中的高度是动态的...那就是当添加或者删除子视图时以及调整了某个子视图的位置和尺寸时就需要重新调整父视图的自适应约束设置。...如果不需要水平滚动则改为将容器视图的宽度等于UIScrollView视图的宽度。通过这样的设置后UIScrollView视图的contentSize将得到自动的计算。...上面的约束设置实现视图滚动的机制也有一定的局限性!那就是一旦在容器视图中添加子视图时就需要重新调整容器视图的右边界和下边界的约束依赖。...因此如果想使用布局视图的尺寸自适应功能,那么在将布局视图的尺寸设置为wrap后,就可以像使用UILabel那样不用去设置布局视图的宽度约束和高度约束了。比如有两个兄弟视图A,B。
免费App排行榜前100大多数都没有使用Swift(至少6个使用ASDK)。出于这些原因,本系列将重点介绍 Objective-C。话虽这么说,我们已经包括了一个Swift版本的实例项目。...UIView 并不是 CALayer 的子类,而是相互环绕,扩展其功能。...preloadingRanges-small.png 这些范围也适用于 screenfuls 的度量,并且可以使用 ASRangeTuningParameters 属性轻松调整。...通常,该范围的前侧大于后侧。当用户改变其滚动方向时,范围的大小也是相反的,以便于对应用户实际移动的方向。 Node接口的状态回调 你可能会疑惑:这些 Ranges 是如何正确工作的?...假设你有一个竖直滚动的tableView,在其中某些Cell包含了水平滚动的 collectionView。
代码如下: // // ViewController.swift // demo1_tableview // // Created by Alice_ss on 2018/2/24. // Copyright...override func viewDidLoad() { super.viewDidLoad() self.tableview = UITableView.init(frame...tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?...{ var headerView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: UIScreen.main.bounds.size.width...super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 刚开始看swift
前言 本文源自实际开发中的需求,核心的要求有几个: 1、多个UITableview要支持左右滑动; 2、点击Tab也要有UITableview的滑动切换效果; 3、每个UITableview单独的下拉刷新和上拉加载...contentSize self.mContainerScrollView.contentSize = CGSizeMake(self.view.width * 4, 0); // 写0,关闭vertical的滚动...解决办法:contentSize的高度设置为0,关闭vertical的滚动。...当UIScrollView直接添加到self.view的属性上时,如果automaticallyAdjustsScrollViewInsets为YES,会调整UIScrollView的inset以适应status...这时候,有的人可能会采用一种解决方案,比如在viewWillAppear的时候,把offset改回去; 或者另一种的解决方案:用UIView把UIScrollView装起来,再把UIView添加到VC.view
介绍 UIView 会占用屏幕上一个矩形的空间。 主要处理两件事:画出矩形控件,并处理其中的事件。 UIView 是层级结构,UIView 只有一个父 View,但可以有多个子 View。...自动布局时放这里 override func viewDidLayoutSubviews() { super.viewDidLayoutSubviews() // 设置无边框...内容可滚动。...UIScrollView、UIPageControl UIScrollView 滚动控件 三个重要属性 contentSize:UIScrollView 滚动的范围。...return cell } // 刷新时的动画 dataSource.defaultRowAnimation = .fade } DataSourceSnapshot 负责变更后的数据源处理
self.view.addSubview(bgImageView) // 账号密码 // 1.账号 let userBgView = UIView...self.presentViewController(buildListNVC, animated: true, completion: nil) } } 在登录后我们会进入一个表视图...tableFooterView = UIView(frame: CGRectZero) self.view.addSubview(myTableView!)...学了这么几天,我发现Swift还是比较容易入手的,下篇文章我会用一个小的项目,本人是做室内地图SDK的,这次的小项目是仿我OC写的SDK Demo,使用Swift和OC混编,集成百度地图SDK和自己的室内...在下篇文章中会讲讲,Swift项目已上github:https://github.com/qingmomo/Swift-die OC版的demo在我们官网:http://www.innsmap.com
一般iOS在UITableView没有数据的时候为了界面好看一点,UI会给这些没有数据的页面设计一些占位图,有的时候是纯图片,有的时候会有一些按钮操作。... @required /** 无数据占位图 @return 占位图 */ - (UIView *)makePlaceHolderView; @optional /**...) UIView *placeHolderView; @end @implementation UITableView (PlaceHolder) - (UIView *)placeHolderView...break; } } // 如果rows为空 if (isEmpty) { // 模式ScrollView可以滚动...self.placeHolderView removeFromSuperview]; self.placeHolderView = nil; // 设置TableView 可滚动
思路:使用UITableView Category来实现,由于占位图式样多种多样,所以控件就不用考虑很多情况,把占位图交给外部实现,控件内部只处理有数据和没有数据显示占位图即可。..." #import @interface UITableView () /**占位图*/ @property (nonatomic, strong) UIView...*placeHolderView; @end @implementation UITableView (PlaceHolder) - (UIView *)placeHolderView {...break; } } // 如果rows为空 if (isEmpty) { // 默认ScrollView可以滚动...self.placeHolderView removeFromSuperview]; self.placeHolderView = nil; // 设置TableView 可滚动
UITableView *)tableView viewForHeaderInSection: (NSInteger)section { UIView *sectionView = [[UIView...- (void) setExtraCellLineHidden: (UITableView *)tableView{ UIView *view = [[UIView alloc] init];...做到前几点后,你的table view滚动时应该足够流畅了,不过你仍可能让用户感到不爽。常见的现象就是在更新数据时,整个界面卡住不动,完全不响应用户请求。...例如每次载入50条信息,那就可以在滚动到倒数第10条以内时,加载更多信息: - (void) tableView: (UITableView *)tableView willDisplayCell: (.../article/details/18262565 UITableVIew滚动流畅性优化 http://blog.csdn.net/enuola/article/details/41942963 uitableview
Reusable Reusable是一个在swift下使用的开源库。利用protocol extension结合泛型提供了一个优雅的方案来dequeueReusableCell。...bundle: nil), forCellWithReuseIdentifier: "MyCustomCell") 粗暴的直接获取cell就可以啦: func tableView(_ tableView: UITableView...根据类型获取xib中的UIView对象 UIView对象声明NibLoadable协议。...对比 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容。 普通的 UIView 不具备滚动功能,不能显示过多的内容。...缩放结束后 scrollView 本身的 frame 并没有发生变化 缩放结束后 imageView 本身的 bounds 也没有发生变化 缩放结束后 imageView 的 center 发生了变化...1.2 UIScrollView常见的几个重要控件 UITableView UICollectionView UITextView 1.3 UIScrollView常见的重要属性 属性名 作用 contentSize...scrollView.maximumZoomScale = 2; // 设置代理 scrollView.delegate = self; 让代理对象返回需要缩放的视图控件 - (UIView...scrollView 通过修改 contentInset 调整内部和边缘的偏移 设置边距之后,初始没有效果,需要拖拽一下才有效果 可以通过设置 contentOffset 调整初始位置 contengInset
Scrollable-GraphView.swift - 灵动感十足的自适应、可定制滚动曲(折)线图表库。...HBHorizontalTableView - swift,TableView 横向滚动小示例(仿照 AppStore 应用展示)。...FDStackView - 可以将 UIStackView 的最低支持版本拉低到 iOS6,无需配置,没有代码侵染,扔到工程里后直接用系统 UIStackView 的 API 即可,同时兼容 Storyboard...QuickRearrangeTableView - 基于 UITableView 的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置。...YX_UITableView_IN_UITableView - UITableview嵌套UITableView案例实践(仿淘宝商品详情页实现),项目讲解。
对于按钮移动的动画就没有去花时间还原了,毕竟这里主要是为了实现滚动压缩、展开Header,动画不讨论。 ? 实现思路 如图所示: ?...首先在要将该界面分成两部分:一个ScrollHeader,一个UITableView。 ScrollHeader占据屏幕上方,高度为展开后的高度 UITableView占据整个屏幕,这样可以完全滚动。...topView 即为压缩后的布局 bottomView 即为展开后的布局 我这里采取将topView固定在ScrollHeader的顶部,覆盖在bottomView上方,根据滑动对其淡入淡出。...; 这个属性的作用就是获得UITableView对应的scrollView,因为UITableView本身是继承UIScrollView的,所以在初始化ScrollHeader的时候可以这么写: MyScrollHeader...#pragma mark - scroll state -(void)willMoveToSuperview:(UIView *)newSuperview{ [self.headerScrollView
的高度改变 UIView *dummyView = [[UIView alloc] init]; dummyView.translatesAutoresizingMaskIntoConstraints...响应链可以解决的问题: 扩大相应区域 超出父类视图相应依然可以传递 垮图层传递事件 找到UIView的UIViewController - (UIViewController *)viewController...UIViewController *)responder; } ButtonCell事件绑定代码: [image.png] 这里我们还是要用一个协议的: [image.png] 注意 用这个协议主要是方便代码的阅读,而且在Swift...ButtonCell不会和VC耦合,修改起来真的很方便 尾巴 以上思路大概就介绍完了,这只是Detail部分,List部分我会在demo中给出 关于Detail和List的概念我会在第三节中介绍,第二节是Swift...版的思路,Swift可以用到泛型,代码更优雅。
环境: Xcode:Xcode 8.2 Swift:swift3+ git 地址:https://github.com/TieShanWang/KKPopover pod 集成:pod 'KKPopover...' 【注意】pod 版本,swift 3 支持,以 3....+开头,同理 swift4 以 4.+ 开头 首先先看效果: ?...棕色区域是可以设置的 红色 底层箭头视图的边框 白色 底层箭头视图的背景颜色 蓝色 自定义内容区域,在此区域(contentView)可以添加希望展示的内容 加号按钮 模拟了 sourceView...可以看到当 sourceView(加号按钮) 在不同地方的时候,popover 自动更改方向、调整箭头方向、位置以适应不同的 sourceView 类说明 open class KKPopover: UIView
label.png 设置圆角、边框等属性是日常开发中几乎每天都要做的事情,譬如我们现在要实现如上这个带边框和圆角的 label,用代码我们可以这么写: label.layer.cornerRadius...圆角 label.png 因为我把这几个属性扩展到了 UIView 上,所以所有继承自 UIView 的控件都可以在 Storyboard 上方便的设置这几个属性了。...我们要处理两个 TableView(或者一个 ScrollView 一个 TableView) 的滚动,这是不科学的。...model.date } } 这样我们在 TableViewDataSource 中只要直接调用 bindModel 就好了: override func tableView(tableView: UITableView...关于面向协议编程 Swift2之后可以用 extension 给协议方法或者属性加上一个默认实现了,这使得 Swift 可以用协议模拟 Ruby 中用 module 实现的 mixin 效果,也就是通过协议扩展某个类的功能
之前看了 Ray Wenderlich 的一篇文章 学习了一下怎么把 UISearchBar 放在 UITableView 的头部,来进行列表搜索,然后发现了两个问题,用了好久才解决: UISearchBar...有个 1 像素宽的黑色边框,去不掉 把 UISearchBar 放在 UITableView 头部的代码在 iOS 8 不起作用 tableView.tableHeaderView = searchController.searchBar...your background color 解决问题 2 我发现 tableHeaderView 是可以被其他 view 有效填充的,不知道为什么 searchBar 就是放不进去,所以直接找个大小一样的 UIView...let containerView = UIView(frame: CGRectMake(0, 64, view.frame.width, 44)) containerView.backgroundColor
领取专属 10元无门槛券
手把手带您无忧上云