黑马程序员——UIImageView笔记

1.iOS中将UITextField输入框设置为密码暗文形式的2种方式?

<1>将UITextField中的secure选项勾中即可;

<2>通过代码实现:

 
 
  1. UItextField *test = [UItextField allocinit];
  2. test.secureTextEntry = YES;

2.UILabel的基本设置?

<1>要想让UILabel自动换行,设置Lines为0即可;

<2>UILabel的文字对齐方式可以通过Alignment来调节。

3.UIButton和UIImageView?

<1>相同点:都能显示图片;

<2>不同点:①UIButton默认情况下就能监听点击事件,而UIImageView默认情况下不能;②UIButton可以在不同状态下显示不同的图片;③UIButton既能显示文字,又能显示图片;

<3>如何选择:①UIButton:需要显示图片,点击图片后需要做一些特定的操作;②UIImageView:仅仅需要显示图片,点击图片后不需要做任何操作。

4.将属性放在get方法中初始化的方式,称为"懒加载"\"延迟加载"。

5.Plist文件?

<1>将数据直接写在代码里面,不是一种合理的做法。如果数据经常改,就要经常翻开对应的代码进行修改,造成代码扩展性低;

<2>因此,可以考虑将经常变的数据放在文件中进行存储,程序启动后从文件中读取最新的数据。如果要变动数据,直接修改数据文件即可,不用修改代码;

<3>一般可以使用属性列表文件存储NSArray或者NSDictionary之类的数据,这种属性列表文件的扩展名是plist,因此也称为"Plist文件"。

6.解析Plist文件?

<1>获得Plist文件的全路径:

 
 
  1. NSBundle *bundle = [NSBundle mainBundle];
  2. NSString *path = [bundle pathForResource:@"imageData" ofType:@"plist"]; // 取得imageData.plist这个文件

<2>加载plist文件:

 
 
  1. _images = [NSArray arrayWithContentsOfFile:path];
  2. - (NSArray *)images
  3. {
  4.     if (_images == nil) {
  5.         NSBundle *bundle = [NSBundle mainBundle];
  6.         NSString *path = [bundle pathForResource:@"imageData" ofType:@"plist"];
  7.         _images = [NSArray arrayWithContentsOfFile:path];
  8.     }
  9.     return _images;
  10. }

7.UIImageView帧动画相关属性和方法?

<1>需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片):

 
 
  1. @property (nonatomic,copyNSArray *animationImages;

<2>帧动画的持续时间:

 
 
  1. @property (nonatomicNSTimeInterval animationDuration;

<3>帧动画的执行次数:

 
 
  1. @property (nonatomicNSInteger animationRepeatCount;

<4>开始执行帧动画:

 
 
  1. - (void)startAnimating;

<5>停止执行帧动画:

 
 
  1. - (void)stopAnimating;

<6>是否正在执行帧动画:

 
 
  1. - (BOOL)isAnimating;

8.UIImage的2种加载方式?

<1>有缓存(图片所占用的内存会一直停留在程序中):

 
 
  1. + (UIImage *)imageNamed:(NSString *)name; // name是图片的文件名

<2>无缓存(图片所占用的内存会在一些特定操作后被清除):

 
 
  1. + (UIImage *)imageWithContentsOfFile:(NSString *)path
  2. - (id)initWithContentsOfFile:(NSString *)path; // path是图片的全路径

9.重复代码的封装抽取?

<1>当一份代码重复出现在程序的多处地方,就会造成程序又臭又长,当这份代码的结构要修改时,每一处出现这份代码的地方都得修改,导致程序的扩展性很差,因此,要将重复出现的代码抽取到某个方法中,在需要这份代码的地方调用方法即可;

<2>抽取代码的思路:①将相同的代码放到一个方法中;②将不同的值当作方法参数传进来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值