随笔分类 - UI进阶
摘要:之前有写了一篇Masonry实现自动布局的随笔,今天无聊的时候又发现了另外一个自动布局的第三方框架Keep Layout,使用起来感觉比Masonry简单一点,相比之下容易理解?附上源码地址:https://github.com/iMartinKiss/KeepLayout关于一些属性的介绍:属性间...
阅读全文
摘要:由于前两天都在学习自动布局的使用,但是又觉得苹果原生的方式太过于麻烦,而且也不易于理解,昨天听人说了有个第三方框架也可以实现自动布局的功能,然后在https://github.com/上找到了Mansonry这个框架,使用起来真的减少了很多时间,而且代码直观,更加容易理解。送上源码地址:https:...
阅读全文
摘要:今天在使用VFL来实现以下界面布局时,遇到了一些问题,但最终得到解决,并加深了使用VFL的理解.最终效果图:遇到的问题一:先上代码: 1 //初始化两个view 2 UIView *redView = [[UIView alloc] init]; 3 redView.back...
阅读全文
摘要:最近在学习iOS的布局,在storyboard里,确定布局的思路:1、确定能确定的;2、无法确定的,看看是否可以想办法和其他控件关联起来,再根据关系来确定能确定的位置.例子:实现如下图的布局过程:1、确定能确定的;左上角的View,左边和上边距离父view的距离都是0(当然,这里假设了view的宽度...
阅读全文
摘要:需求:1.三个隐藏的按钮,在红色按钮底部2.点击红色按钮时,底部三个隐藏按钮,就显示出来显示时候有旋转+平移的动画3.再次点击红色按钮,显示的三个按钮又隐藏隐藏时候旋转+平移动画文件和布局:实现的代码: 1 // 2 // ViewController.m 3 // MenuRotation 4...
阅读全文
摘要:示例布局和资源:示例代码: 1 // 2 // ViewController.m 3 // CarsAnimation 4 // 5 // Created by xiaomoge on 15/1/6. 6 // Copyright (c) 2015年 xiaomoge. All rights...
阅读全文
摘要:Core Animation是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍,使用它需要先添加QuartzCore.framework和引入对应的框架。开发步骤:①初始化一个动画对象(CAAnimation)并设置一些动画相关属性②添加动画对象到层(CALayer)...
阅读全文
摘要:隐式动画:直接改变属性就会有动画效果,非根层才有隐式动画,根层是没有隐式动画的。根层与非根层:控件的layer属性是根层控件的layer属性的子层就是非根层隐藏动画的禁止:1 [CATransaction begin];2 [CATransaction setDisableActions:YES...
阅读全文
摘要:CALayer:在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView。其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层。在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对...
阅读全文
摘要:为了完成手势识别,必须借助于手势识别器----UIGestureRecognizer利用UIGestureRecognizer,能轻松识别用户在某个view上面做的一些常见手势UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,使用它的子类才能处理具体的手势UITapGes...
阅读全文
摘要:响应者:继承了UIResponder的对象就是响应者响应者链条:1、由多个响应者对象连接起来的链条叫做响应者链条2、什么是上一个响应者? 2.1、如果当前这个view是控制器的view,控制器就是上一个响应者 2.2、如果当前这个view不是控制器的view,那么父控件就是上一个响应者3、利用响应者...
阅读全文
摘要:事件的产生和传递:发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中;UIApplication会从事件队列中取出最前面的事件,并将事件分发下去以便处理,通常,先发送事件给应用程序的主窗口(keyWindow);主窗口会在视图层次结构中找到一个最合适的视图来处理触摸...
阅读全文
摘要:在iOS中,触摸事件分为3种类型:1、触摸事件;Multitouch events2、加速计事件;Accelerometer events3、远程事件;Remote control events响应者对象:在iOS中,只有继承了UIResponder的对象能接收并处理事件的,UIApplicatio...
阅读全文
摘要:需求:实现一个简易的手势解锁应用,具体效果如下图所示:实现步骤:1、代码创建界面,自定义一个view,设置view的背景,颜色等属性;2、在自定义的view中,定义2个属性,一个是存储被选中按钮的可变数组,另外一个是最后的触摸点(CGPoint);3、重写initWithFrame方法,在这里,自定...
阅读全文
摘要:需求:实现一个简易的涂鸦板应用,使用鼠标在涂鸦板内拖动即可进行涂鸦,点击保存按钮,可以把完成的涂鸦保存,点击回退按钮可以向后退回一步,点击清空可以让涂鸦板清空。实现步骤:1、布局storyboard,连线各按钮以及涂鸦板;2、监听触摸事件,主要为touchesBegan:和touchesMoved:...
阅读全文
摘要:1、绘制线条:1.1、在storyboard中拖拉一个view,并设置大小;1.2、自定义一个类,继承自UIView,并与1.1中的view进行关联;1.3、- (void)drawRect:(CGRect)rect方法中实现画线条: 1 // 2 // LineView.m 3 // Draw...
阅读全文
摘要:1、Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统的API是纯C语言的,API来自于Core Graphics框架,数据类型和函数基本都以CG作为前缀,如:CGContextRefCGPathRefCGContextStrokePath(ctx);……2、Quartz2D可以做的工...
阅读全文
摘要:segue:Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue)。segue的属性:1 //唯一标识2 @property (nonatomic, readonly) NSString *identifier;3 //源控制器4 @prope...
阅读全文
摘要:APP主流UI框架结构:通过UITabBarController和UINavigationController来搭建仿QQ框架结构:1、搭建如上图界面:一个UITabBarController,4个UINavigationController以及4个UITableViewController;2、搭...
阅读全文
摘要:UITabBarController跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用。UITabBarController简单介绍中也有说过,为了便于管理控制器,iOS提供了2个...
阅读全文

浙公网安备 33010602011771号