随笔分类 -  OC学习之路--iOS基础

摘要:一、导航控制器的子类 作为导航控制器的子类,并且是导航控制器子类中的第一个,系统会默认给子控件添加EdgeInsert属性,把导航栏的宽度挤出来。但是系统只会默认修改第一个。 解决办法1:系统帮忙给第一个子控件添加了EdgeInsert,之后的子控件可以自己添加。 解决办法2:将系统默认的操作取消 阅读全文
posted @ 2016-04-19 14:04 Chaos_G 阅读(420) 评论(0) 推荐(0)
摘要:一、static作用 二、copy 阅读全文
posted @ 2016-04-17 17:00 Chaos_G 阅读(236) 评论(0) 推荐(0)
摘要:一、方法1:如图,图中的两个tableView分别交给两个控制器来管理 重点难点:categoryTableView被点击之后,subcategoryTableView要取得相应的数据进行刷新,所以subcategoryTableView要成为categoryTableView的代理。 在categ 阅读全文
posted @ 2016-04-17 16:49 Chaos_G 阅读(615) 评论(0) 推荐(0)
摘要:一、如图所示的界面,按钮One、Two、Three分别对应三个控制器的view,点击实现切换。个人感觉父子控制器的重点在于,控制器的view们之间建立了父子关系,控制器不建立的话,发生在view上面的事件,对应的view可能接收不到,控制器们建立了父子关系后,可以将事件传递给相应的控制器。 练习代码 阅读全文
posted @ 2016-04-17 16:09 Chaos_G 阅读(2325) 评论(0) 推荐(0)
摘要:一、初次读取json数据 二、KVC转模型技巧,这里的技巧主要解决的是字典中的key 与 模型中有的属性对应不起来的时候 的解决办法 <方法1> <方法2>运行时字典转模型,运行时自己一直很晕。不过还是整理下来,方便以后用。 这里直接创建了一个分类。 头文件代码 1 // 2 // NSObject 阅读全文
posted @ 2016-04-14 22:42 Chaos_G 阅读(375) 评论(0) 推荐(0)
摘要:一、我只想说封装的思想很重要,MVC的思想也很重要,利用MVC思想搭建一下的界面 先说显示出来的cell,有三种(图中的两种,还有一种是最普通的,没有图片的),这种显示不同的cell,交给模型来处理,模型中的数据决定了要显示的样式。 但是有考虑到功能的不一样,所以运用了面向对象的思想,同时继承自ce 阅读全文
posted @ 2016-04-14 17:26 Chaos_G 阅读(339) 评论(0) 推荐(0)
摘要:一、上次实现了在AppDelegate中通过判断app版本决定是否进入新特性页面,今天将AppDelegate中的一坨进行了封装。将self.window的根控制器到底应该为新特性界面,还是主页面,封装到了导航工具类ChaosGuideTool 封装,先决定外面怎么用,然后实现方法。外部通过类方法调 阅读全文
posted @ 2016-04-14 14:51 Chaos_G 阅读(359) 评论(0) 推荐(0)
摘要:一、新特性界面搭建的思路: 在AppDelegate加载主窗体的时候进行判断程序版本号,直接进入程序或者进入新特性展示界面 取出当前的版本号,与旧的版本号相比较(旧的版本号在进入程序的时候存起来 =》建议偏好设置存储) 版本号不一样,说明当前版本是新版本需要进入新特性介绍,并将版本号存下来 二、UI 阅读全文
posted @ 2016-04-11 18:28 Chaos_G 阅读(322) 评论(0) 推荐(0)
摘要:一、竞技场搭建--UISegmentedControl的使用 二、搭建发现中的合买--storyboard和代码混合开发 重定义按钮,改变按钮中图片和label的顺序。layoutSubviews方法默认会调用两次,这样位置就会出现偏差,如图黄色框框为偏差 三、搭建发现中的幸运选号 --在story 阅读全文
posted @ 2016-04-10 13:27 Chaos_G 阅读(424) 评论(0) 推荐(0)
摘要:一、自定义蒙版--封装控件,先想好外界怎么来调用,根据外界调用的方法,然后进入内部实现 在外部,调用蒙版的方法--[ChaosCover show]; [ChaosCover hide]; 内部实现 二、封装活动菜单--在蒙版上显示,点击叉叉,动画形式消失在左上角 使用xib描述了活动菜单的内容 外 阅读全文
posted @ 2016-04-09 22:30 Chaos_G 阅读(359) 评论(0) 推荐(0)
摘要:一、环境配置,和项目层次搭建 二、自定义TabBar 项目中TabBar中的导航按钮美工给的图片太大,图片中包含了图片和文字。最主要的是TabBar上面的按钮图片尺寸是有规定的,当高度大于44的时候,就不会显示了 解决办法:自定义TabBar,继承自UIView,给UIView设置相应个数的按钮,自 阅读全文
posted @ 2016-04-07 14:54 Chaos_G 阅读(402) 评论(0) 推荐(0)
摘要:一、CALayer UIView之所以能显示在屏幕上,完全是因为他内部的一个图层 在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 当UIView需要显示到屏幕上时,会调用drawRect:方法进行绘制,并且会将所有 阅读全文
posted @ 2016-04-05 21:21 Chaos_G 阅读(385) 评论(0) 推荐(0)
摘要:一、图片裁剪,示意图 二、带圆环的图片裁剪示意图 阅读全文
posted @ 2016-04-03 22:57 Chaos_G 阅读(330) 评论(0) 推荐(0)
摘要:一、给图片添加水印的基本步骤 手动创建位图上下文 绘制原生的图片 给原生的图片添加文字 生成一张图片给我们,从上下文中获取图片 关闭上下文 二、注意:位图上下文的获取方式跟layer上下文不一样。位图上下文需要我们手动创建 三、效果图 阅读全文
posted @ 2016-04-03 22:30 Chaos_G 阅读(203) 评论(0) 推荐(0)
摘要:一、Quartz2D使用须知 Quartz2D的API是纯C语言的 Quartz2D的API来自于Core Graphics框架 二、<1>通过原始的方法(C语言)绘制简单图形--了解 <2>OC也封装了绘制图形的框架UIKit(贝瑟尔路径)--掌握 三、自定义进度控件的练习,效果图 阅读全文
posted @ 2016-04-03 22:16 Chaos_G 阅读(219) 评论(0) 推荐(0)
摘要:iOS 3.2之后,苹果退出了手势识别功能(Gesture Recognizer),在触摸事件处理方面,大大简化了开发者的开发难度。 一、UIGestureRecognizer UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,使用它的子类才能处理具体的手势 UITapG 阅读全文
posted @ 2016-04-01 10:18 Chaos_G 阅读(307) 评论(0) 推荐(0)
摘要:一、用户在使用APP的过程中,会产生各种各样的事件。iOS中的事件可以分为3大类型: 二、响应者对象 在iOS中只有继承了了UIResponder的对象才能接受并处理事件,这样的对象称之为“响应者对象” UIApplication、UIViewController、UIView都继承自UIRespo 阅读全文
posted @ 2016-03-31 23:44 Chaos_G 阅读(334) 评论(0) 推荐(0)
摘要:一、UITabBarController的使用步骤 初始化UITabBarController 设置UIWindow的rootViewController为UITabBarController 根据具体情况,通过addChildViewController方法添加对应个数的子控制器 代码实现: UI 阅读全文
posted @ 2016-03-30 14:20 Chaos_G 阅读(246) 评论(0) 推荐(0)
摘要:XML属性列表(plist)归档 Preference(偏好设置) NSKeyedArchiver归档(NSCoding) SQLite3--这里暂且不讲 Core Data--这里暂且不讲 一、应用沙盒 每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其他文件系统隔离。应用必须待在 阅读全文
posted @ 2016-03-28 23:13 Chaos_G 阅读(496) 评论(0) 推荐(0)