EUI库 - 自动布局】的更多相关文章

  自适应流式布局 width="100%" top left right horizontalCenter=0 失效验证机制 这些异步过程都封装好了,我们只需要关注那一对方法: invalidateProperties() 和 commitProperties() ,前者标记属性失效,后者应用失效的属性     一个是测量验证   invalidateSize() 和 measure() 一个是布局验证. invalidateDisplayList() 和 updateDisplay…
  eui.UILayer UILayer是Group的子类它只有一个功能,到放到场景上后,宽高永远和场景宽度一致   Group Group 是自动布局的容器基类.如果包含的子项内容太大需要滚动显示,可以在在 Group 外部包裹一层 Scroller 组件(将 Group 实例赋值给 Scroller 组件的 viewport 属性).Scroller 会为 Group 添加滚动的触摸操作功能,并显示垂直或水平的滚动条. 做过试验了 操作内部对象的方法 和Sprite基本一致,只是多了get…
  List 和DataGroup的区别 1 选中一项 会触发 eui.ItemEvent.ITEM_TAP 事件, 2 有选中项的概念,可以设置 List 里的默认选中项    selectedIndex selectedItem  3 可以开启多选状态 allowMultepleSelection = true ;    selectedIndices    selecteditems    requireSelection 至少要有一个被选中 4 配合Scroller可实现滚动效果…
  ArrayCollection  当数组内的数据被修改了(增删改),组件能有效的获知 myCollection.addEventListener(eui.CollectionEvent.COLLECTION_CHANGE,this.collectionChangeHandler,this); 长度 ArrayCollection.length 增 addItem() addItemAt() 删 removeItemAt() removeAll(); 改 replaceItemAt( {},…
  DataGroup 设置一个数据源 自动创建内部所需的对象 来完成数据展示   还要设置单条数据的模板  叫ItemRenderer   继承关系 eui.List  eui.ListBase eui.DataGroup eui.Group 创建ItemRenderer 继承 eui.ItemRenderer 然后在内部添加自定义的功能 dataGroup.itemRenderer = LabelRenderer  策略1 useVirtualLayout  = false  有多少条数据就…
  皮肤分离机制    皮肤分离机制对制作可复用的外观比较有优势 那对于只使用一次的皮肤呢?如果也拆分出两个文件,显然不太方便.这里我们针对单次使用的皮肤定制了内部类的功能   每个组件都有一个childrenCreated()方法,它会在组件初始化完成后回调,子类通常覆盖这个方法来访问一些延迟实例化的子项. 皮肤部件 在皮肤附加到逻辑组件上时,会自动匹配双方的同名变量和id,这些同名变量就叫做“皮肤部件”(SkinPart)   .当为某个组件定制皮肤时,实际上就分为创建对应的皮肤部件和显示图…
    EXML是可以运行时加载解析的   <e:Skin class="skins.ButtonSkin" states="up,down,disabled" minHeight="50" minWidth="100" xmlns:e="http://ns.egret.com/eui"> <e:Image width="100%" height="100%&…
    新特性 36k   访问EUI组件宽高时,也会跟原生显示对象的表现一致,立即能得到包含子项的宽高值   统一的显示列表  普通对象和eui对象都可用addChild来添加   一个逻辑组件只管代码控制,一个皮肤组件只负责外观 内部类  <e:Button label="按钮">          <e:Skin states="up,over,down,disable">              <e:Image source…
  步骤 1 在根节点,添加一个自定义的命名空间  2 可以设置skinName 自定义组件规范 1 不复用的不要用自定义组件 2 属性必须要有默认值(赋值为null也可以),因为TS编译器会把没有默认值的属性直接优化掉,在运行时并不存在. 3.属性的getter方法内要判断访问的对象是否为空,确保外部任何情况下访问属性都不会报错. 4 组件构造函数参数必须为空,或者参数有默认值,否则无法用空构造函数实例化. 5.组件的构造函数内不应该有对外部业务逻辑依赖的代码,这部分代码可以转移到组件被添加到…
  egretProperties.json exmlRoot  指定exml文件存放根目录,该路径必须为相对路径,目录内只能有exml文件 themes    主题文件数组,配置所有主题文件路径,该路径必须为相对路径(什么是主题?) exmlPublishPolicy 发布时主题文件存储exml策略,可能的值有 path,content,gjs (这三个值我也不懂)   path :主题文件只存储路径,会去加载不同exml文件,和debug时一致,不推荐使用 content :主题文件存储ex…
首先我了解了什么是Egret: Egret中文就是白鹭的意思,Egret是一套H5游戏开发的软件.(纯粹属于个人理解) 其次我对以下几款软件的相关知识做了些了解: Egret Engine(引擎),Egret Wing(编辑器),Texture Merger(可将零散纹理拼合为整图,同时也可以解析SWF.GIF动画,导出可供Egret使用的配置文件),Egret Feather(是一款粒子效果编辑器)ResDepot(是针对资源配置文件的创建,编辑和管理工具)等.......ps:现在我只看了这…
SDAutoLayout:一行代码搞定自动布局!支持Cell和Tableview高度自适应,Label和ScrollView内容自适应,致力于做最简单易用的AutoLayout库. [SDAutoLayout 视频教程:http://www.letv.com/ptv/vplay/24038772.html] ☆新增:cell高度自适应 + label文字自适应☆ >>>>> tableview cell 自动高度设置只需要3步 1. >> 设置cell高度自适应:…
前面的几篇文章讲解了自动布局库SnapKit的使用方法.本文通过一个完整的样例(登录页面)来演示在实际项目中如何使用SnapKit来实现自动化布局的.1,效果图如下…
为了适应各种屏幕尺寸,iOS 6后引入了自动布局(Auto Layout)的概念,通过使用各种 Constraint(约束)来实现页面自适应弹性布局. 在 StoryBoard 中使用约束实现自动布局很方便,但如果用纯代码来设置约束就很麻烦了.这里向大家推荐一个好用的第三方布局库:SnapKit(其前身是 Masonry,一个OC版的布局库)   1.SnapKit介绍  SnapKit是一个优秀的第三方自适应布局库,它可以让iOS.OS X应用更简单地实现自动布局(Auto Layout).G…
参考资料(戳这里): >  Masonry官网 >  Masonry介绍与使用实践(快速上手Autolayout) >  iOS 开发实践之 Auto Layout >  Masonry的使用 >  https://github.com/ming1016/study/wiki/Masonry >  SDAutoLayout:比masonry更简单易用的自动布局库 >  iOS开发通过代码方式使用AutoLayout (NSLayoutConstraint + Ma…
1,约束优先级我们使用SnapKit的时候,还可以定义约束的优先级.这样当约束出现冲突的时候,优先级高的约束覆盖优先级低的约束.具体优先级可以放在约束链的结束处. (1)可以设置如下几种优先级 priorityLow():设置低优先级,优先级为250priorityMedium():设置中优先级,优先级为500(这个也就是默认的优先级)priorityHigh():设置高优先级,优先级为750priority():可以设置任意的优先级,接受的参数是0-1000的数字.比如:priority(60…
在之前的文章中我介绍了如何使用SnapKit的 snp_makeConstraints 方法进行各种约束的设置.但有时我们的页面并不是一直固定不变的,这就需要修改已经存在的约束.本文介绍如何更新.移除.代替现有的约束.1,删除约束要实现对现有的约束进行更新或者移除,我们需要先将约束的结果赋值给一个局部变量或一个类属性,然后对这个约束的引用进行操作.比如下面样例:开始时我们给橙色方块添加了个距屏幕上方40像素的约束,点击按钮后使用 uninstall() 方法把这个约束给移除…
#import "ViewController.h" #import "Masonry.h" #define kWeakSelf(weakSelf) __weak typeof(self)weakSelf = self #define WS(weakSelf) __weak __typeof(&*self)weakSelf = self @interface ViewController () { UIView *topView; } @end @imple…
1. iOS两种自适应布局方式:(修正说明:) -AutoLayout(自动布局) + SizeClasses(尺寸类别) -Autoresizing (自动调整尺寸/弹簧式调整尺寸) 前者 AutoLayout 是从iOS6出现,通过创建视图约束实现自适应,SizeClasses是iOS8 开始出现,用于配合AutoLayout使用,为解决所有(包括iPhone,iPad)iOS设备屏幕尺寸和屏幕旋转时UI的适配. 后者是早期开发使用的适配界面的方式,现在仍然保留.通过弹簧式调整控件尺寸,使其…
本文介绍一些流行的iOS的开源代码库 1.AFNetworking 更新频率高的轻量级的第三方网络库,基于NSURL和NSOperation,支持iOS和OSX.https://github.com/AFNetworking/AFNetworking 2.GPUImage 图像处理库,基于OpenGL ES,图像处理效率高.https://github.com/BradLarson/GPUImage 3.Masonry 自动布局库.https://github.com/SnapKit/Mason…
文章来源:http://www.csdn.net/article/2015-07-21/2825264-27-ios-open-source-libraries/1 我热爱开源,更喜爱那些花费宝贵的业余时间来创造奇迹的开发者们,感谢他们将自己辛苦劳动的成果无偿分享给大家.开源作者和贡献者们,你们太了不起了,感谢你们所付出的一切. 鉴于我是收集不全会死星人,这里我根据个人喜好选取了一些iOS的开源库.这些项目的顺序完全随机,每个都棒到爆.绝大多数支持CocoaPods,所以将它们添加到你的Xcod…
综合github上各个项目的关注度与具体使用情况,涵盖功能,UI,数据库,自动化测试,编程工具等类型,看完,还敢自称”精通iOS开发”吗? https://github.com/syedhali/EZAudio 基于核心音频,有助于进行实时,低延迟音频处理和可视化的iOS和OSX音频可视化框架. https://github.com/bang590/JSPatch JSPatch使用Objective-C运行时桥接Objective-C和Javascript.你可以只包括一个此库,就可以通过Ja…
链接: Swift 有哪些优秀的第三方库? Swift 中AFNetworking 的替代方案 Alamofire Swift2.0后Alamofire的使用方法 [快速学会Swift第三方库] Alamofire篇 iOS开发——网络编程Swift篇&Alamofire详解 Swift编程(六):Snapkit的启示录 Swift - 自动布局库SnapKit的使用详解1(配置.使用方法.样例) Swift 开源框架总结…
http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生.本篇文章将详细介绍如何使用自动布局实现不同屏幕尺寸的适配. 添加自动布局约束(下文简称约束)有以下三种方式: 使用Xcode的Interface Builder界面设计器添加并设置约束 通过代码逐条添加约束 通过可视化格式语言VFL添加约束 本文将以一个简单的例子来演示如何使用这几种方式添加约束,如下图所示…
1.ASIHttpRequest网络请求库 2.MBProgressHUD指示层库 3.Toast+UIView提示库 4.SDWebImage图片缓存库 5.MGSwipeTableCell单元格侧滑库 6.MJRefresh下拉刷新(上拉加载) 7.UIResponder+Router进行事件分发 8.FMDB进行数据库操作 ASIHttpRequest网络请求库 ASIHttp库下载地址:https://github.com/pokeb/asi-http-request ASIHTTP类库…
一.autoresizing 的使用(了解) 只能参照父控件 1.实现横竖屏幕切换,不能把控件的frame血丝,需要进行屏幕适配 2.需要参照父控件 use auto layout禁用 才会出现autoresizing 3.autolayout和autoresizing是互斥的 不通过运行来查看不同尺寸下的情况 preview->mainstoryboard 4.外侧的四根线勾选,表示该view距离父控件四周的边界的距离保持不变 内侧的两根线表示表示宽度和高度会随着父view 的变化而变化(等比…
DZNEmptyDataSet(UI,空表格视图解算器) PDTSimpleCalendar(UI,drop-in日历组件) MagicalRecord(实施活跃记录模式的Core Data助手) Chameleon(UI,色彩框架) Alamofire(Swift 网络) TextFieldEffects (UI,自定义外观的文本区域) GPUImage(快速图片处理) iRate(获取用户评价) GameCenterManager(快速管理游戏中心) PKRevealController 2…
iOS开发非常全的三方库.插件等等 github排名:https://github.com/trending, github搜索:https://github.com/search. 此文章转自github:https://github.com/Tim9Liu9/TimLiu-iOS 一.UI 下拉刷新 EGOTableViewPullRefresh- 最早的下拉刷新控件. SVPullToRefresh- 下拉刷新控件. MJRefresh- 仅需一行代码就可以为UITableView或者Co…
综合github上各个项目的关注度与具体使用情况,涵盖功能,UI,数据库,自动化测试,编程工具等类型,看完,还敢自称”精通iOS开发”吗? https://github.com/syedhali/EZAudio 基于核心音频,有助于进行实时,低延迟音频处理和可视化的iOS和OSX音频可视化框架. https://github.com/bang590/JSPatch JSPatch使用Objective-C运行时桥接Objective-C和Javascript.你可以只包括一个此库,就可以通过Ja…
原文:Advanced Auto Layout Toolbox 这篇文章并没有具体介绍自动布局的一些基本概念,主要讲解了一些高级的使用方法和调试技巧,文中有的句子比较长,意思也有点难懂,所以需要静下心仔细揣摩.如果你刚接触自动布局,推荐你先看这几篇文章:1.官方的Guide:About Cocoa Auto Layout  2.来自raywenderlich的tutorial:Beginning Auto Layout in iOS 6: Part 2/2    3.来自@onevcat 的bl…