UI的学习
KFC是做基的
Stay hungry, Stay foolish
展开
-
进击的KFC:UI(一)UIView及其子类
#pragma mark --- UIViewUIView 代表一个矩形区域创建一个视图的4步骤:1.初始化: 起始点从(屏幕的)父视图左上角开始计算,为(0,0)点 (必须记住)UIView *view = [[UIView alloc] initWithFrame:CGRect(100,100,200,100)];2.设置一些属性view.backgroundColor = [UICo原创 2015-11-10 22:40:25 · 355 阅读 · 0 评论 -
进击的KFC:UI(14)集合视图UICollectionView
// 创建一个网状结构UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];// 设置网状结构的具体属性// 1.设置 最小行间距layout.minimumLineSpacing =10;// 2.设置 最小列间距layout. minimumInteritemSpacing = 10;//原创 2015-12-15 21:35:15 · 441 阅读 · 0 评论 -
进击 的KFC:UI(12)动画
#pragma mark --- UIVIew动画 // UIVIew动画 // 动画特点:全部都是类方法 直接类去调用 // 1.UIVIew 直接调用 // 2.block方法// 1.UIVIew 直接调用 步骤: 1.开始动画 // 参数1:标识动画的字符,动画的ID // 参数2:携带参数 [UIView beginAnimation:原创 2015-12-15 21:29:03 · 292 阅读 · 0 评论 -
进击的KFC:UI(13)多线程
一.概念.1.进程:正在活动(或者运行)的一个应用程序就是一个进程2.主线程 : 每一个进程 都能至少有一条线程 叫 主线程'3.线程:每一个线程都是相互独立的,可以执行任务 , 除了主线程以外的,都叫子线程.4.子线程可以有多个,但是线程是耗费资源的. 在我们 ios开发中一般不超过5条,注:3条差不多了.5.程序退出后 会清空线程的任务, 就是消灭应用程序对应的那条进程6.主线程 操原创 2015-12-15 21:30:55 · 418 阅读 · 0 评论 -
进击的KFC:UI(十一)自定义Cell
一.自定义Cell的步骤: (其实只要是自定义控件,都是这个步骤) 1.创建一个UITableViewCell 的 子类 2.重写初始化方法 3.把要添加的控件添加到cell的显示内容的区域:contentView 4.把系统的cell 改成自定义的cell 具体:1.command + N 创建一个继承UITableViewCell的文件2.重写初始化方法- (instanceTyp原创 2015-11-26 20:51:47 · 490 阅读 · 0 评论 -
进击的KFC:UI(十)UITableView的编辑和移动
一.pragma mark ——————– tableView的编辑tableView的四个步骤:1.开启tableView的编辑状态:我们需要的是table的可编辑状态 [self.tableView setEditing:!self.tableView.editing animated:YES];2.允许哪个分区的哪行是可以编辑的(默认都是能编辑的) - (BOOL)tableView:原创 2015-11-26 19:40:43 · 375 阅读 · 0 评论 -
进击的KFC:UI(五)手势识别器
一.什么是⼿势识别器? 手势类:UIGestureRecognizer是一个抽象类 , 其具体功能交给子类去实现.二.⼿势识别器的分类 手势识别器有7个子类: 分别识别:轻拍手势,平移手势,长按手势,轻扫手势,缩放手势,旋转手势,边缘扫手势 一旦指定的手势被识别我们可以执行我们自己定义好的操作 三.如何使⽤识别器 我们不会直接使⽤⼿势识别器这个抽象⽗类,⽽是根据需要使⽤特定的⼿势识别器创原创 2015-11-26 10:05:16 · 429 阅读 · 0 评论 -
进击的KFC:UI(九)UITableView 表示图
UITableViewUITableView是继承自UIScrollView的滚动表视图. 且只能纵向滚动 UITableView主要由Section(分区)和row(行数)两个NSInteger类型和UITableViewCell(单元格, 用于设置每行的具体内容的封装类)3个数据结构构成UITableViewCell是系统已经封装好的一个类, 它里面自带了一些控件, 比如UIImageVie转载 2015-11-26 17:40:36 · 561 阅读 · 0 评论 -
进击的KFC:UI(八)导航试图控制器,传值
一. UINavigationController导航视图控制器 导航视图控制器 :控制 其他视图控制器 的 控制器 其实它就是一个控制器(UIViewController),带一个view,带一个导航条)AppDelegate.m中所做:让导航视图控制器作为window的根视图控制器 // 1.初始化一个视图控制器 RootViewController *rootVC = [RootVi原创 2015-11-26 16:55:47 · 566 阅读 · 0 评论 -
进击的KFC:UI(六)UISegmentControl,UISlider,NSTimer,UIImageView
一.pragma mark ————- UISegmentedControl 分段按钮———————————–继承于UIControl 1.初始化 UISegmentedControl seg = [UISegmentedControl alloc] initWithItems:(NSArray ) 注意这个初始化用到的数组里的元素 必须是字符串 或者 镂空图 (1)字原创 2015-11-26 11:35:48 · 407 阅读 · 0 评论 -
进击的KFC:UI(七)滚动视图 和 分页按钮
一.pragma mark - UIScrollView滚动视图思考套路: 1.找适合的代理方法 2.从方法中 操作要改变的 3.判断时的条件:偏移量,活动范围,当前的scrollView// 1.初始化UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:[UIScreen mainScreen].bounds];//原创 2015-11-26 16:13:50 · 471 阅读 · 0 评论 -
进击的KFC:UI(四)实现划屏效果,用View实现Button的效果
实现划屏效果:UITouch类:保存手指信息(触摸的点)开始触摸方法:-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ UITouch *touch = [touches anyObject]; // 取出当前触摸的点: CGPoint p1 = [touch locationInV原创 2015-11-14 14:15:08 · 518 阅读 · 0 评论 -
进击的KFC:UI(三)自定义视图、视图控制器
⼀、⾃定义label-textField视图 1.1⾃定义视图:系统标准UI之外,⾃⼰组合⽽出的新的视图。 iOS提供了很多UI组件,借助它们,我们可以做各种程序。 尽管如此,实际开发中,我们还需⾃定义视图。积累⾃⼰的代码库。 ⽅便开发。⾃⼰封装的视图,能像系统UI控件⼀样,⽤于别的项⺫ 中,能⼤⼤降低开发成本,提⾼开发效率。1.2⾃定义视图步骤 根据需求的不同,⾃定义视图继承的类也有所原创 2015-11-14 11:45:03 · 399 阅读 · 0 评论 -
进击的KFC:UI(二)基础视图、程序启动流程
本讲主要讲基础视图:UITextField,UIButton,delegate以及程序的启动流程一.#pragma mark ——-UITextField UITextField(输⼊框):是控制⽂本输⼊和显⽰的控件。在App中UITextField出现频率也⽐较⾼。 UITextField和UILabel相⽐,UILabel主要⽤于⽂字显⽰,不能编辑,UITextField允许⽤户编辑⽂字原创 2015-11-14 11:14:22 · 456 阅读 · 0 评论 -
进击的KFC:懒加载
1.懒加载基本懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法.注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化2.使用懒加载的好处:(1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强(2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合3.代码示例/原创 2015-12-21 21:54:54 · 373 阅读 · 0 评论