OC开发_Storyboard——UITableView

一、tableView

1、datasource数据源

(1 构造每一个tableVIewCell的方法:cellForRowAtIndexPath,这里的

dequeueReusableCellWithIdentifier会根据识别ID去取storyBoard中的cell,同时这也是利用取缓存中的cell复用

(2 还包含了另外两个方法,numberOfSectionsInTableView 默认是返回1如果不重写它的话;numberOfRowsInSection是没有默认值的,所以实现数据源的时候这个是必须实现的

- (NSInteger)numberOfSectionsInTableView:(UITableView *)sender;

- (NSInteger)tableView:(UITableView *)sender numberOfRowsInSection:(NSInteger)section;

2、delegate 协议,方法有很多,这里仅仅举例两个

(1 比如用户点了哪一行?做了什么操作?

- (void)tableView:(UITableView *)sender didSelectRowAtIndexPath:(NSIndexPath *)path

(2  每个cell的图标的点击如下图:

- (void)tableView:(UITableView *)sender accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath         

3、segue 点击cell跳转的时候,

比如跳转到另外一个segue,那么对应的 prepareForSegue就应该知道是哪一个cell的点击,所以sender参数就起到了这个作用

我们可以利用 NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];

4、加载中的spinner

@property (strong) UIRefreshControl *refreshControl;

开启加载动画: - (void)beginRefreshing;

结束加载动画:- (void)endRefreshing;

当然需要启动配置:

5、reloadData重新加载数据

- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths  withRowAnimation:(UITableViewRowAnimation)animationStyle;

详情的tableView方法可以参考之前写的这篇文章:http://www.cnblogs.com/daomul/p/4370128.html

时间: 2024-10-23 19:44:23

OC开发_Storyboard——UITableView的相关文章

OC开发_Storyboard——Core Data

一 .NSManagedObjectContext 1.我们要想操作Core Data,首先需要一个NSManagedObjectContext2.那我们如何获得Context呢:创建一个UIManagedDocument 二.UIManagedDocument 1.UIManagedDocument是一系列用于管理存储的机制:  [将Core Data数据库放入某存储空间,相当于是管理core data 数据库的存储,所以我们只需要打开和存储]2.那我们如何得到UIManagedDocumen

OC开发_Storyboard——iPad开发

iPad开发(Universal Applications) 一.iPad 1.判断是否在iPad上 BOOL iPad = ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad); 二.UISplitViewController 分割视图控制器 1.UISplitViewController 分割视图控制器(顶级视图,不能放在Nav或者其他视图中) (1  可以通过 if (self.splitVie

OC开发_Storyboard——MapKit

一.Core  Location 1.基本对象 @propertys: coordinate, altitude, horizontal/verticalAccuracy, timestamp, speed, course @property (readonly) CLLocationCoordinate2D coordinate; typedef { CLLocationDegrees latitude; //   double型 纬度 CLLocationDegrees longitude;

OC开发_Storyboard——AutoLayout

一.autolayout 自动布局: 1. 设置所有视图框架的三种方法,可以通过代码创建也可以storyboard设置 = 规则 (1 蓝线+约束:(位置) 使用蓝线,根据蓝线拖动控件,只是告诉Xcode我要这样设置,但是还需要Xcode为我们执行相应的规则和约束 Reset to Sugested Constrains in VIew Controller(前提是使用了蓝线) (2 点击底部菜单按钮:Add New Alignments Constraints 具体设置(需要 update f

OC开发_Storyboard——block和动画

 一.协议 @optional :可选的 @requied :必须实现的  二.block 代码块 1. 以一个^开头,然后是参数,然后是一个大括号,包含我们的代码块 1 [aDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) { 2 NSLog(@“value for key %@ is %@”, key, value); 3 if ([@“ENOUGH” isEqualToString:ke

OC开发_Storyboard——绘制和视图

1.绘制 不要调用drawRect.调用setNeedsDisplay相当于告知系统视图需要重绘, 它会去调用drawRect,更新屏外缓冲器 2.UIBezierPath绘制图形,   设置图像opaque属性=no,根据透明度一层层合成视图,比直接修改比特值的开销会大很大多,消耗性能   如果只是显示的问题可以通过设置hidden 3.UIGestureRecognizer setNeedDisplay是为了让有人修改时重绘 ,据目标大小,选择合适尺寸 现在利用绘制做一个小demo,效果如下

OC开发_Storyboard——UIApplication和网络活动指示器

一.UIApplication 只有一个实例: UIApplication *myApplication = [UIApplication sharedApplication]; 属性如果设置为YES的话,状态栏上的小转轮就会转,NO则不会[网络活动的表示,正在进行网络活动] @property (nonatomic, getter=is...) networkActivityIndicatorVisible;

OC开发_Storyboard——多线程、UIScrollView

一.多线程 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必须在主线程中执行,有两种方法 1 //更新UI必须在主线程中执

IOS开发系列--UITableView使用全面解析

--UIKit之UITableView 概述 在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信.QQ.新浪微博等软件基本上随处都是UITableView.当然它的广泛使用自然离不开它强大的功能,今天这篇文章将针对UITableView重点展开讨论.今天的主要内容包括: 基本介绍 数据源 代理 性能优化 UITableViewCell 常用操作 UITableViewController MVC模式 基本介绍 UITableVie