- 显示或隐藏Finder中的文件
你想打开整个系统的隐藏文件可以在终端下输入以下命令: 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协议.可以通过代理实现相应的方法,在这里不详述这个属性.
如上图,我们可以使用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); }```
- SDWebImage实现图片的渐进渐处模糊加载
[_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]; } }];```
- UISegmentContrl更改Index上的文字颜色和大小
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 - 检查相机权限
- (BOOL)canUserCamear{ AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo]; if (authStatus == AVAuthorizationStatusDenied) { UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"请打开相机权限" message:@"设置-隐私-相机" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:@"取消", nil]; alertView.tag = 100; [alertView show]; return NO; } else{ return YES; } return YES; }
- 获取UISearchBar中的textField
>```
UITextField *txfSearchField = [searchBar valueForKey:@"_searchField"];
- 解决手势与UIButton冲突问题
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { if ([touch.view isKindOfClass:[UIButton class]]){ return NO; } return YES; }
[记一些技巧](http://mp.weixin.qq.com/s?__biz=MjM5OTM0MzIwMQ==&mid=2652547085&idx=1&sn=549e63eb5c6a7e62ce16bc835e3fbc8b&scene=0#wechat_redirect)