(三)懒加载以及一些设计规范
来源:互联网 发布:软件shop floor editor 编辑:程序博客网 时间:2024/04/29 15:23
/** 这是一只显示图片的猫 */
@property (weak, nonatomic) IBOutlet UIImageView *tom;
这样的好处是调用时显示注释:
九.UIButton UIImageView区别
@property (nonatomic, strong) NSArray *apps;
- (NSArray *)apps{
if(_apps == nil){
NSString *path = [[NSBundle mainBundle] pathForResource:@"app.plist" ofType:nil];
_apps = [NSArray arrayWithContentsOfFile:path];
NSLog(@"%@",_apps);
}
return _apps;
}
注意文件名和拓展名可以写在一起,然后后面写nil。
2.向View中加入组件,指针销毁后视图仍然存在,例如九宫格的添加:
for (int index = 0; index < self.apps.count; index++){
UIView *appView = [[UIView alloc] init];
appView.backgroundColor = [UIColor redColor];
CGFloat appX = margin + (index % totalCol)*(margin + appW);
CGFloat appY = 30 + (index / totalCol)*(margin + appH);
appView.frame = CGRectMake(appX, appY, appW, appH);
[self.view addSubview:appView];
}
3.设计技巧:所有组件的x,y,w,h均表示为变量,一是方便修改,二是方便后续计算(CGFloat类型)。
4.让按钮高亮和普通显示文字一致,则只需要设置UIControlStateNormal(按钮的text称为setTitle)。
按钮设置字体的方式:按钮内部默认有两个子控件,一个imageView,一个label。
@property(nonatomic,readonly,retain) UILabel *titleLabel NS_AVAILABLE_IOS(3_0);
@property(nonatomic,readonly,retain) UIImageView *imageView NS_AVAILABLE_IOS(3_0);
btn.titleLable.text = @“xxx”;//这样是不安全的,因为系统不知道文字对应的状态,可能会在高亮时消失,不推荐,用setTitle更好。
同理,设置按钮前面的image,使用[downloadBtn setImage: forState:]
5.设置字体:
downloadBtn.titleLabel.font = [UIFont systemFontOfSize:13];
6.避免计算margin
先让imageView填充,然后内容居中,使用contentMode属性设置。
7.关于readonly
一个属性readonly,它的内部成员是否readonly还要看具体成员的设置,不是则可以修改。
8.Xcode安装插件:
打开插件运行,然后command+q完全退出。再使用。
例如注释插件,///触发。
- (三)懒加载以及一些设计规范
- .NET设计规范(三) 类型设计规范
- OpenStack入门以及一些资料之(三、Keystone)
- (三)HTML5的实体表现以及一些元素
- 设计规范一(数据库)
- AndroidUI设计规范(完整版)
- 设计规范
- 加载插件(三)
- 前端懒加载以及预加载
- 前端懒加载以及预加载
- 前端懒加载以及预加载
- 懒加载,预加载实现以及对比
- Spring学习笔记(三):项目发布以及一些简单配置
- LIS(最长上升子序列)问题的三种求解方法以及一些例题
- 【图片加载】Glide的使用以及遇到的一些坑
- 数据库设计规范(命名规范)
- 数据库设计规范(命名规范)
- 数据库设计规范(命名规范)
- No resource found that matches the given name 'android:Widget.Material.A
- scanf()函数的用法
- Android 中的Handler
- ASP.Net日志记录组件XCLNetLogger发布啦
- [Android]PHP的Sha1轉成Java的Sha1
- (三)懒加载以及一些设计规范
- 在使用delegate时,使用event 与不使用的区别
- android按键的三种响应方式
- Myeclipse10下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3
- uva 514 Rails
- printf与scanf的返回值、注意点
- lua学习笔记15:table数组逆序
- mybatis动态sql查询Dynamic SQL之if,foreach,choose,trim,where,set
- 《GNU make项目管理》笔记--变量与宏(1)