技巧。。。

iOS开发中的一些技巧及代码片段

2016-08-03  本文已影响109人  相关函数

你想打开整个系统的隐藏文件可以在终端下输入以下命令:
defaults write com.apple.finder AppleShowAllFiles -bool true
关闭显示隐藏功能
defaults write com.apple.finder AppleShowAllFiles -bool false
killall Finder 重启Finder

使用终端命令进入项目所在的文件夹
在终端中输入

find . "(" -name "*.m" -or -name "*.strings" -or -name "*.h" ")" -print | xargs wc -l

回车就可以查询到了


代码行数

total前面的数字就是代码的行数...

富文本实例

在UILabel UITextView UITextField等控件中都存在一个attributedText关键字,其实这就是富文本.他是NSAttributedString类型的,这个类中存在着改变文字不同段落的文字大小,颜色等属性的方法.富文本也就是可改变属性的字符串...

NSAttributedString遵循了NSCopying,NSMutaleCopying以及NSSecureCoding协议.可以通过代理实现相应的方法,在这里不详述这个属性.

init方法

如上图,我们可以使用NSString,来初始化一个富文本,也可以在使用字符串初始化的时候带一个文本属性,当然直接使用一个符文本的字符串初始化也可...

NSAttributedString中最重要的参数

_subtitleLab.text = [NSString stringWithFormat:@" %@",[_myDict objectForKey:@"subtitle"]];
_subtitleLab.width = SCREENWIDTH-20;
*attStr = [[NSMutableAttributedString alloc] initWithString:_subtitleLab.text];
NSArray *arr = [_subtitleLab.text componentsSeparatedByString:@":"];
NSString *firstStr = arr[0];
// [attStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14] range:NSMakeRange(_subtitleLab.text.length-secondStr.length, secondStr.length)];
[attStr addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithHexString:@"#ef8c55"] range:NSMakeRange(0, firstStr.length)];
_subtitleLab.attributedText = attStr;```

UIView *line = [[UIImageView alloc] initWithFrame: CGRectMake(60, self.view.bounds.size.height/2.0-self.view.width+190, self.view.width-120, 2)];

line.backgroundColor = [UIColor colorWithHexString:@"62bb46"];

[self.view addSubview:line ];

[UIView animateWithDuration:2.5 delay:0.0 options:UIViewAnimationOptionRepeat animations:^{

   line.frame = CGRectMake(60, self.view.bounds.size.height/2.0+80, self.view.width-120, 2);

} completion:nil];

UIGraphicsBeginImageContext(size);
[img drawInRect:CGRectMake(0, 0, size.width, size.height)];
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return scaledImage;

}```

-(void)fullScreenshots{
UIWindow *screenWindow = [[UIApplication sharedApplication] keyWindow];
UIGraphicsBeginImageContext(screenWindow.frame.size);//全屏截图,包括window
[screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
}```

[_photoImageView sd_setImageWithURL:[NSURL URLWithString:myParser.kv_photoStr] placeholderImage:nil completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
SDWebImageManager *manager = [SDWebImageManager sharedManager];
if ([manager diskImageExistsForURL:[NSURL URLWithString:myParser.kv_photoStr]]) {
NSLog(@"不加载动画");
}else {
_photoImageView.alpha = 0.0;
[UIView transitionWithView:_photoImageView
duration:1.0
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[_photoImageView setImage:image];
_photoImageView.alpha = 1.0;
} completion:NULL];
}
}];```

NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor],NSForegroundColorAttributeName, [UIFont systemFontOfSize:17],NSFontAttributeName, nil];
[segmentedCtrl setTitleTextAttributes:dic forState:UIControlStateSelected];

NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:[UIColor blackColor],NSForegroundColorAttributeName, [UIFont systemFontOfSize:17],NSFontAttributeName, nil];
[segmentedCtrl setTitleTextAttributes:dic1 forState:UIControlStateNormal];```

pragma mark - 检查相机权限


- 获取UISearchBar中的textField

>```
UITextField *txfSearchField = [searchBar valueForKey:@"_searchField"];


[记一些技巧](http://mp.weixin.qq.com/s?__biz=MjM5OTM0MzIwMQ==&mid=2652547085&idx=1&sn=549e63eb5c6a7e62ce16bc835e3fbc8b&scene=0#wechat_redirect)
上一篇 下一篇

猜你喜欢

热点阅读