-只在.m文件中实现而没有在.h文件中定义的方法是私有方法
-系统自带的静态方法一般都是“自动释放”的
-收起键盘 [self.view endEditing:YES]
- UIImage *img=[UIImage imageNamed:name];//(有缓存--无法释放,参数传的是文件名)加载图片--有缓存--图片经常用,不需要释放时使用
-[UIImage alloc]initWithContentsOfFile:]//(无缓存--用完就会释放,参数传的是全路径)
-bundle:nil (参数时)默认就是NSBundle mainBundle
-MAXFLOAT 宏
-UI控件用weak,Nsstring用copy,其它对象一般用strong ,int-assign
-使用storyboard要去掉“use autolayout”和“size”选择“3.5英寸的屏幕”
-label默认只显示一行,要想自动换行,设置XXX=0
-arr=[NSMutableArray array];//创建可变数组
-“%02d”两位,空出的位置用0来填充
-使用storyboard时需要将class设置为对应的controller[启动]
-加载plist数据
NSArray *arr=[NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"news.plist" ofType:nil]];
for (NSDictionary *dic in arr) {
[_news addObject:[News newsWithDictionary:dic]];
}
-加载xib
(方法1)
NSArray *objects=[[NSBundle mainBundle]loadNibNamed:@"NewsCell" owner:nil options:nil];
cell=objects[0];
(方法2)
UINib *nib=[UINib nibWithNibName:@"NewsCell" bundle:[NSBundle mainBundle]];
NSArray *objects=[nib instantiateWithOwner:nil options:nil];
cell=objects[0];
【tableView】
-数据源
-协议、代理
-1组数
-2每组显示行数
-3每个cell显示的内容
{
//重用标示符
//1.从缓存池中取出可循环利用的cell
UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
//2.如果缓存池中没有可循环利用的cell则创建
if(nil==cell)
{
cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"];
}
}
-UITableViewCellStyleSubtitle
-cell.accessoryType:设置最右边显示的小图标
-cell.accessoryView:设置最右边显示的控件
【scrollView】
-contentSize属性(滚动范围
)
【init】 构造函数返回id类型
#import "Shop.h"
@implementation Shop
-(id)initWithIcon:(NSString *)icon name:(NSString *)name desc:(NSString *)desc
{
if(self=[super init])
{
self.icon=icon;
self.name=name;
self.desc=desc;
}
return self;
}
+(Shop *)shopWithIcon:(NSString *)icon name:(NSString *)name desc:(NSString *)desc
{
return [[self alloc]initWithIcon:icon name:name desc:desc];
}
@end