OC开发_Storyboard——UITableView】的更多相关文章

一.tableView 1.datasource数据源 (1 构造每一个tableVIewCell的方法:cellForRowAtIndexPath,这里的 dequeueReusableCellWithIdentifier会根据识别ID去取storyBoard中的cell,同时这也是利用取缓存中的cell复用 (2 还包含了另外两个方法,numberOfSectionsInTableView 默认是返回1如果不重写它的话:numberOfRowsInSection是没有默认值的,所以实现数据源…
一.Core  Location 1.基本对象 @propertys: coordinate, altitude, horizontal/verticalAccuracy, timestamp, speed, course @property (readonly) CLLocationCoordinate2D coordinate; typedef { CLLocationDegrees latitude; //   double型 纬度 CLLocationDegrees longitude;…
iPad开发(Universal Applications) 一.iPad 1.判断是否在iPad上 BOOL iPad = ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad); 二.UISplitViewController 分割视图控制器 1.UISplitViewController 分割视图控制器(顶级视图,不能放在Nav或者其他视图中) (1  可以通过 if (self.splitVie…
一 .NSManagedObjectContext 1.我们要想操作Core Data,首先需要一个NSManagedObjectContext2.那我们如何获得Context呢:创建一个UIManagedDocument 二.UIManagedDocument 1.UIManagedDocument是一系列用于管理存储的机制:  [将Core Data数据库放入某存储空间,相当于是管理core data 数据库的存储,所以我们只需要打开和存储]2.那我们如何得到UIManagedDocumen…
一.autolayout 自动布局: 1. 设置所有视图框架的三种方法,可以通过代码创建也可以storyboard设置 = 规则 (1 蓝线+约束:(位置) 使用蓝线,根据蓝线拖动控件,只是告诉Xcode我要这样设置,但是还需要Xcode为我们执行相应的规则和约束 Reset to Sugested Constrains in VIew Controller(前提是使用了蓝线) (2 点击底部菜单按钮:Add New Alignments Constraints 具体设置(需要 update f…
一.多线程 1.主队列:处理多点触控和所有UI操作(不能阻塞.主要同步更新UI) dispatch_queue_t mainQueue = dispatchg_get_main_queue(); //获得主线程Dispatch_async(queue ,^{ }); //异步执行Blockdispatch_queue_t Queue = dispatch_queue_create(“name”,NULL);//创建一个 2.更新UI必须在主线程中执行,有两种方法 //更新UI必须在主线程中执行,…
一.UIApplication 只有一个实例: UIApplication *myApplication = [UIApplication sharedApplication]; 属性如果设置为YES的话,状态栏上的小转轮就会转,NO则不会[网络活动的表示,正在进行网络活动] @property (nonatomic, getter=is...) networkActivityIndicatorVisible;…
1.绘制 不要调用drawRect.调用setNeedsDisplay相当于告知系统视图需要重绘, 它会去调用drawRect,更新屏外缓冲器 2.UIBezierPath绘制图形,   设置图像opaque属性=no,根据透明度一层层合成视图,比直接修改比特值的开销会大很大多,消耗性能   如果只是显示的问题可以通过设置hidden 3.UIGestureRecognizer setNeedDisplay是为了让有人修改时重绘 ,据目标大小,选择合适尺寸 现在利用绘制做一个小demo,效果如下…
 一.协议 @optional :可选的 @requied :必须实现的  二.block 代码块 1. 以一个^开头,然后是参数,然后是一个大括号,包含我们的代码块 [aDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) { NSLog(@“value for key %@ is %@”, key, value); if ([@“ENOUGH” isEqualToString:key]) {…
一个简单的Navigation的例子,demo里面用到了上一个demo的MVC,可以参考下:http://www.cnblogs.com/daomul/p/4426063.html 建立一个Nav其实灰常简单,通过Editor->embed in ->NaviationController可以直接引入,就不具体介绍了.效果如下: 代码如下: ShowStatesViewController.m: // // ShowStatesViewController.m // testForNotifi…
一.生命周期 1.ViewDidLoad: 一般的初始化,除了几何图形的初始化(这个时候还没确定) 2.ViewWillAppear: 代表你的视图将要在屏幕上显示,可能会调用多次,对不可见时可能能改变的内容进行同步 (例如模型改变的时候调用显示改变的数据) 3.ViewWillDisappear 不在屏幕不再占用资源时,记住.恢复.停止 4.didRecevierMemoryWarning 手机运行占用很大空间,例如图像.视频:释放内存,处理内存警告(系统决定) 具体的生命周期是这样的: (1…
--UIKit之UITableView 概述 在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信.QQ.新浪微博等软件基本上随处都是UITableView.当然它的广泛使用自然离不开它强大的功能,今天这篇文章将针对UITableView重点展开讨论.今天的主要内容包括: 基本介绍 数据源 代理 性能优化 UITableViewCell 常用操作 UITableViewController MVC模式 基本介绍 UITableVie…
使用OC开发phonegp 组件 1. 使用oc 对phonegp中的组件近些开发,首先具体的pgonegp跟nativecode之间的一些优劣就不说了,开发phonegp 对应的组件主要就是使用nativecode开发一些具有某些功能的组件,然后这些类交付给js使用就可以了,说简单些就是使用OC开发一些类然后交付使用,这中间涉及一个最主要的问题就是,js如何实现与nativecode代码之间的通信问题,解决了这个麻烦一切问题迎刃而解,首先Cordova为我们提供了一个最核心的组件,依靠这个ph…
IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITableView实现的.UITableView这个控件中的列表的每一行是一个cell,当UITableView中cell数量特别大的时候,由于每次都需要alloc分配内存并初始化,会导致app运行不流畅,所以可以使用苹果提供的几个方法进行优化,我把这个过程记录下来供自己以后查阅. 当然,既然说到优化,那我们…
Swift开发体验 /*: 创建对象 * OC: alloc initWithXXX 方法 * Swift: (xxx:) */ /*: 调用方法 * OC: [UIColor redColor]; * Swift UIColor.redColor() */ /*: 枚举 * OC: UIButtonTypeContactAdd * Swift: UIButtonType.ContactAdd */ //[[UIView alloc] init]; //[[UIView alloc] initW…
折腾了一天,才搭建好OC的开发环境,用于OC学习.其中折腾劲儿我也是醉了.感谢我的破联想Ideapad Y470 坚持到了最后,感谢我的固态,感谢CCAV. 用到的工具及下载地址: 1.MAC10.11镜像  下载地址:http://pan.baidu.com/s/1c1qq3Ri 2.VM12及序列号  下载地址:百度一大把 3.VM解锁工具Unlocker208  下载地址:http://pan.baidu.com/s/1bnLk2tT 4.Xcode7.3 Beta 下载地址(苹果官方):…
 UITableView 继承自 UIScrollView ,用于实现表格数据展示,支持垂直滚动.  UITableView 需要一个数据源来显示数据,并向数据源查询一共有多少行数据以及每一行显示什么内容等.凡是遵守 UITableViewDataSource 协议的Objc对象,都可以是 UITableView 的数据源.  - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView  返回共有多少组数据.  - (NSI…
最近在微博上看到一个很好的开源项目VVeboTableViewDemo,是关于如何优化UITableView的.加上正好最近也在优化项目中的类似朋友圈功能这块,思考了很多关于UITableView的优化技巧,相信这块是难点也是痛点,所以决定详细的整理下我对优化UITableView的理解. UITableView作为iOS开发中最重要的控件之一,其中的实现原理很是考究.Apple在这块的优化水平直接决定了iOS的体验能甩安卓几条街,哈哈,扯淡扯多了...好了,废话不多说,直接进入主题.首先来谈谈…
概述 移动设备的内存极其有限,每个app所有占用的内存是有限的.当app所占用的内存比较多时,系统会发出内存警告,这时得回收一些不需要再使用的内存空间. 任何集成了NSObject的对象都需要手动进行内存管理.因为OC对象存放于堆里面. 引用计数器 每一个OC对象都有内部有自己的引用计数器.该计数器占用4个字节.从字面可以理解为"多少人在使用这个对象". 当对象的引用计数器为0时.该对象会才会被释放. 一个对象通过alloc. copy .new创建一个对象,该对象默认的引用计数器为1…
UITableView cell自定义头文件:shopCell.h#import <UIKit/UIKit.h>@interface shopCell : UITableViewCell@property (strong, nonatomic)  UIImageView *image;@property (strong, nonatomic)  UILabel *name;@property (strong, nonatomic)  UILabel *itemshop;@property (s…
造成这个问题的原因可能有两个: 1. UITableView的contentOffset属性的改变: 2. MJRefresh调用两次headerEndRefreshing会造成刷新后UITableView上移.…
iOS 开发之登陆 iOS 程序初始一个带导航栏的视图 iOS 添加导航栏两侧按钮 iOS UITabBar…
设置 UITableView 中 cell 的背景颜色. 示例1:通过 backgroundView 设置. UIView *view1 = [[UIView alloc] init]; view1.backgroundColor = [UIColor blueColor]; cell.backgroundView = view1; 示例2:通过 backgroundColor 设置. cell.backgroundColor = [UIColor blueColor];  background…
先上图: 具体代码如下: #import "ViewController.h" @interface ViewController ()<UITableViewDelegate,UITableViewDataSource> @property(nonatomic,strong)UITableView *myTableV; @property(nonatomic,strong)NSArray *contentAry; @end @implementation ViewCont…
一.进程和线程   二.各种队列! 1.GCD:Grand Central Dispatch 2.串行队列(Serial)      你可以创建任意个数的串行队列,每个队列依次执行添加的任务,一个队列同一时刻只能执行一个任务(串行),但是各个队列之间不影响,可以并发执行.每个队列中的任务运行在一个由各自串行队列 维护的独立线程上,一个队列中只有一个线程. 3.并行队列(Concurrent)      并行队列是不允许自己创建的,系统中存在三个不同优先级的并行队列.并行队列依旧按照任务添加的顺序…
一.介绍 之前已经实现过通过简单的XIB文件来自定义我们的tableViewCell,包括每一步的步骤和代码:http://www.cnblogs.com/daomul/p/4355999.html 现在我们采取另外一种方式,通过纯编写代码来实现自定义我们的tableview,那么什么时候使用XIB,是这样的,当我们的cell的高度是固定的时候,我们可以采用XIB文件,如果我们的cell高度是不固定的,那么就需要使用代码编写了 二.效果 话不多说,上一个没有放图,这个先看我们大概做出来的效果如下…
一.实现步骤 1.新建一个XIB文件:描述cell——tableCell.xib 2.新建UITableViewCell的子类,也就是cell文件:封装XIB内部的所有东西——TestCell.m \Testcell.h 2.1 在cell文件中拥有XIB中的所有子控件 (包括生命属性,进行连线) 2.2 给cell增加模型属性,即通过重写set方法,根据模型属性设置cell内部子控件的属性 : (这一步是从控制器解放抽取出来放在cell中) 2.3 提供一个类方法testCell,使得返回从X…
property和synthesize 创建一个Person类.提供成员属性的_age和_height的setter和getter方法. #import <Foundation/Foundation.h> @interface Person : NSObject { int _age; int _height; } - (void)setAge:(int)age; - (int)age; @end #import "Person.h" @implementation Per…
成员变量的作用域 OC中成员变量有四种作用域,同时每一种作用域对应着响应的关键字. * @private:自能在当前类的实现@implementation中访问 * @protected: 可以在当前类以及子类的实现@implementation中直接访问 默认 * @public: 任何地方都可以直接访问 * @package: 同一个"体系结构"框架可以访问.介于@private和@public之间 在@implementation实现中声明的成员变量默认是私有的. #import…
面向对象 面向对象思想是一种解决问题的思想, 不在是面向过程的去思考问题怎样解决.面向对象解决问题时首先要考虑需要找几个对象能解决这个问题. 常见的概念: * Object Oriented 面向对象 简称 OO * Object Oriented Programming 面向对象编程 简称 OOP 要有对象那么就需要先有类.因为对象是基于类创建的. OC类与对象 OC中的类是对对象的描述.完整的定义一个类包含两部分. * 类的声明 * 类的实现 声明使用关键字@interface声明一个类的属…