扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
ios平台上有很多好用的相机应用,如果利用好的话,用手机也可以拍出来大片的感觉哦~
创新互联公司服务项目包括黄龙网站建设、黄龙网站制作、黄龙网页制作以及黄龙网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,黄龙网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到黄龙省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
1,Camera+这款应用甚至被评为iphone上最好的摄影应用,好评度就不说啦!~也可以直接用Camera+来调整自己相册里的照片,里面有不少可以让照片调节得更棒的设置,比如说曝光时间调整焦距等~
2,Hipstamatic这款应用在Ios上也非常出名哦,它可以营造不同的特色效果,还可以组合不同底片,不同的镜头,任意组合镜头闪光灯,制造出千变万化的拍摄效果。
而且它的界面也非常可爱,就像拿了一个老式相机一样,就是取景框相对来说比较小。而且设置也很多,可以随意搭配镜头底片闪光灯。它能够组合出来其他应用拍不出来的效果,有的可能会意想不到地好看哦~
3,ProCamera
这个相对来说稍微专业一些啦~有拍照功能,还有视频拍摄功能,而且后期也可以处理哦。前后镜头,闪光灯开关都是标准配置,而ProCamera最大的特色就是可以调节对焦和平衡,而且还有防抖功能,自拍定时,虚拟水平线等,是不是很专业啊~
4,布丁相机
这款iphone拍照应用是韩国人免费开发的,很不错的一款拍照应用,采取全景幅设计,充分利用了iphone手机的高清大屏,左侧有曝光设定,下方是特效设置,软件设置以及按钮。
以上,希望能够帮助到需要的朋友~
打开相机:
[cpp] view plain copy
//先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;
// if (![UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) {
// sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
// }
//sourceType = UIImagePickerControllerSourceTypeCamera; //照相机
//sourceType = UIImagePickerControllerSourceTypePhotoLibrary; //图片库
//sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片
UIImagePickerController *picker = [[UIImagePickerController alloc] init];//初始化
picker.delegate = self;
picker.allowsEditing = YES;//设置可编辑
picker.sourceType = sourceType;
[self presentModalViewController:picker animated:YES];//进入照相界面
[picker release];
打开相册:(区分pad和iphone)
for iphone:
[cpp] view plain copy
UIImagePickerController *pickerImage = [[UIImagePickerController alloc] init];
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
pickerImage.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
//pickerImage.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
pickerImage.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:pickerImage.sourceType];
}
pickerImage.delegate = self;
pickerImage.allowsEditing = NO;
[self presentModalViewController:pickerImage animated:YES];
[pickerImage release];
for ipad:
[cpp] view plain copy
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
//sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = NO;//是否允许编辑
picker.sourceType = sourceType;
/*
如果从一个导航按钮处呈现,使用:
presentPopoverFromBarButtonItem:permittedArrowDirections:animated:;
如果要从一个视图出呈现,使用:
presentPopoverFromRect:inView:permittedArrowDirections:animated:
如果设备旋转以后,位置定位错误需要在父视图控制器的下面方法里面重新定位:
didRotateFromInterfaceOrientation:(在这个方法体里面重新设置rect)
然后再次调用:
- (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated
*/
//UIPopoverController只能在ipad设备上面使用;作用是用于显示临时内容,特点是总是显示在当前视图最前端,当单击界面的其他地方时自动消失。
UIPopoverController *popover = [[UIPopoverController alloc]initWithContentViewController:picker];
self.imagePicker = popover;
//permittedArrowDirections 设置箭头方向
[self.imagePicker presentPopoverFromRect:CGRectMake(0, 0, 300, 300) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
[picker release];
[popover release];
点击相册中的图片 货照相机照完后点击use 后触发的方法
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary
*)info
点击cancel 调用的方法
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
1、统一收键盘的方法
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];
2、提示框
BBAlertView *alert = [[BBAlertView alloc] initWithStyle:BBAlertViewStyleDefault
Title:@"删除订单"
message:@"是否删除订单,"
customView:nil
delegate:self
cancelButtonTitle:L(@"取消")
otherButtonTitles:L(@"确认")];
[alert setCancelBlock:^{
}];
[alert setConfirmBlock:^{
[self orderDidRemovePressDown:tempDic Index:index.section];
}];
[alert show];
3、图片的自适应功能
self.brandImage.contentMode = UIViewContentModeScaleAspectFit;
4、cocoaPods清除缓存问题
$ sudo rm -fr ~/.cocoapods/repos/master
$ pod setup
5、设置显示键盘的样式
textView.keyboardType =UIKeyboardTypeDefault;
//设置键盘右下角为完成(中文输入法下)
textView.returnKeyType=UIReturnKeyDone;
6、输出当前时间
NSDateFormatter * dateFormatter=[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"当前毫秒时间1==%@",[dateFormatter stringFromDate:[NSDate date]]);
7、显示两秒然后消失
UILabel * lab=[[UILabel alloc]initWithFrame:CGRectMake(60,Main_Screen_Height-64-49-60, Main_Screen_Width-120, 50)];
lab.backgroundColor=[UIColor grayColor];
ViewRadius(lab, 20);
lab.textAlignment=NSTextAlignmentCenter;
lab.text=@"请先进行实名制验证";
[self.view addSubview:lab];
[UILabel animateWithDuration:2 animations:^{
lab.alpha=0;
}completion:^(BOOL finished) {
[lab removeFromSuperview];
}];
8、设置placeholder属性的大小和颜色
[_phoneFie setValue:[UIColor grayColor] forKeyPath:@"_placeholderLabel.textColor"];
[_phoneFie setValue:[UIFont boldSystemFontOfSize:15] forKeyPath:@"_placeholderLabel.font"];
_phoneFie.returnKeyType=UIReturnKeyDone;
9、设置cell的交互完全不可以使用
//[cellTwo setUserInteractionEnabled:NO];
//设置cell不可以点击,但是上面的子控件可以交互
cellTwo.selectionStyle=UITableViewCellSelectionStyleNone;
10、将textField的placeholder 属性的字体向右边移动5
_field.leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10*Width_375, _field.frame.size.height)];
_field.leftViewMode = UITextFieldViewModeAlways;
11、开新线程使按钮上的时间变化
-(void)startTime{
__block int timeout=60; //倒计时时间
UIButton * btn=(UIButton *)[self.view viewWithTag:1000];
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_source_t _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue);
dispatch_source_set_timer(_timer,dispatch_walltime(NULL, 0),1.0*NSEC_PER_SEC, 0); //每秒执行
dispatch_source_set_event_handler(_timer, ^{
if(timeout=0){
dispatch_source_cancel(_timer);
dispatch_async(dispatch_get_main_queue(), ^{
[btn setTitle:@"发送验证码" forState:UIControlStateNormal];
btn.enabled = YES;
});
}else{
// int minutes = timeout / 60;
int miao = timeout % 60;
if (miao==0) {
miao = 60;
}
NSString *strTime = [NSString stringWithFormat:@"%.2d", miao];
dispatch_async(dispatch_get_main_queue(), ^{
[btn setTitle:[NSString stringWithFormat:@"剩余%@秒",strTime] forState:UIControlStateNormal];
btn.enabled = NO;
});
timeout--;
}
});
dispatch_resume(_timer);
}
12、隐藏TableView 中多余的行
UIView * view=[[UIView alloc]initWithFrame:CGRectZero];
[_tabelView setTableFooterView:view];
13、UIView添加背景图片
UIImage * image=[UIImage imageNamed:@"friend750"];
headSeV.layer.contents=(id)image.CGImage;
14、UITableView取消选中状态
[tableView deselectRowAtIndexPath:indexPath animated:YES];// 取消选中
15、带属性的字符串
NSFontAttributeName 字体
NSParagraphStyleAttributeName 段落格式
NSForegroundColorAttributeName 字体颜色
NSBackgroundColorAttributeName 背景颜色
NSStrikethroughStyleAttributeName 删除线格式
NSUnderlineStyleAttributeName 下划线格式
NSStrokeColorAttributeName 删除线颜色
NSStrokeWidthAttributeName 删除线宽度
NSShadowAttributeName 阴影
1. 使用实例
UILabel *testLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 100, 320, 30)];
testLabel.backgroundColor = [UIColor lightGrayColor];
testLabel.textAlignment = NSTextAlignmentCenter;
NSMutableAttributedString *AttributedStr = [[NSMutableAttributedString alloc]initWithString:@"今天天气不错呀"];
[AttributedStr addAttribute:NSFontAttributeName
value:[UIFont systemFontOfSize:16.0]
range:NSMakeRange(2, 2)];
[AttributedStr addAttribute:NSForegroundColorAttributeName
value:[UIColor redColor]
range:NSMakeRange(2, 2)];
testLabel.attributedText = AttributedStr;
[self.view addSubview:testLabel];
16、加大按钮的点击范围
把UIButton的frame 设置的大一些,然后给UIButton设置一个小些的图片
[tmpBtn setImageEdgeInsets:UIEdgeInsetsMake(5, 5, 5, 5)];
// 注意这里不能用setBackgroundImage
[tmpBtn setImage:[UIImage imageNamed:@"testBtnImage"] forState:UIControlStateNormal];
17、//避免self的强引用
__weak ViewController *weakSelf = self;
18、//类别的创建
command +n ——Objective-C File———(File Type 选择是类别还是扩展)———(Class 选择为哪个控件写类别)
19、修改UITableview 滚动条颜色的方法
self.tableView.indicatorStyle=UIScrollViewIndicatorStyleWhite;
20、利用UIWebView显示pdf文件
webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)];
[webView setDelegate:self];
[webView setScalesPageToFit:YES];
[webViewsetAutoresizingMask:UIViewAutoresizingFlexibleWidth |UIViewAutoresizingFlexibleHeight];
[webView setAllowsInlineMediaPlayback:YES];
[self.view addSubview:webView];
NSString *pdfPath = [[NSBundle mainBundle]pathForResource:@"ojc" ofType:@"pdf"];
NSURL *url = [NSURLfileURLWithPath:pdfPath];
NSURLRequest *request = [NSURLRequestrequestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:5];
[webView loadRequest:request];
21、将plist文件中的数据赋给数组
NSString *thePath = [[NSBundle mainBundle]pathForResource:@"States" ofType:@"plist"];
NSArray *array = [NSArrayarrayWithContentsOfFile:thePath];
22、隐藏状态栏
[[UIApplication shareApplication]setStatusBarHidden: YES animated:NO];
23、给navigation Bar 设置title颜色
UIColor *whiteColor = [UIColor whiteColor];
NSDictionary *dic = [NSDictionary dictionaryWithObject:whiteColor forKey:NSForegroundColorAttributeName];
[self.navigationController.navigationBar setTitleTextAttributes:dic];
24、使用AirDrop 进行分享
NSArray *array = @[@"test1", @"test2"];
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:array applicationActivities:nil];
[self presentViewController:activityVC animated:YES
completion:^{
NSLog(@"Air");
}];
25、把tableview里面Cell的小对勾的颜色改成别的颜色
_mTableView.tintColor = [UIColor redColor];
26、UITableView去掉分割线
_tableView.separatorStyle = NO;
27、正则判断手机号码地址格式
- (BOOL)isMobileNumber:(NSString *)mobileNum {
// 电信号段:133/153/180/181/189/177
// 联通号段:130/131/132/155/156/185/186/145/176
// 移动号段:134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/147/178
// 虚拟运营商:170
NSString *MOBILE = @"^1(3[0-9]|4[57]|5[0-35-9]|8[0-9]|7[06-8])\\d{8}$";
NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE];
return [regextestmobile evaluateWithObject:mobileNum];
}
28、控制交易密码位数
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
if (textField.text.length =6){
[MBProgressHUD showMessage:@"密码为6位" afterDelay:1.8];
return NO;
}
return YES;
}
29、判断是不是空
if ([real_name isKindOfClass:[NSNull class]] ) {
return NO;}
30、点击号码拨打电话
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://400966220"]];
31、控制UITabbar的选择哪一个
[self.tabBarController setSelectedIndex:1];
32、获取当前App的版本号
NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
CFShow(infoDictionary);
// app名称
NSString *app_Name = [infoDictionary objectForKey:@"CFBundleDisplayName"];
// app版本
NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
// app build版本
NSString *app_build = [infoDictionary objectForKey:@"CFBundleVersion"];
33、苹果app权限NSPhotoLibraryUsageDescriptionApp需要您的同意,才能访问相册NSCameraUsageDescriptionApp需要您的同意,才能访问相机NSMicrophoneUsageDescriptionApp需要您的同意,才能访问麦克风NSLocationUsageDescriptionApp需要您的同意,才能访问位置NSLocationWhenInUseUsageDescriptionApp需要您的同意,才能在使用期间访问位置NSLocationAlwaysUsageDescriptionApp需要您的同意,才能始终访问位置NSCalendarsUsageDescriptionApp需要您的同意,才能访问日历NSRemindersUsageDescriptionApp需要您的同意,才能访问提醒事项NSMotionUsageDescriptionApp需要您的同意,才能访问运动与健身NSHealthUpdateUsageDescriptionApp需要您的同意,才能访问健康更新NSHealthShareUsageDescriptionApp需要您的同意,才能访问健康分享NSBluetoothPeripheralUsageDescriptionApp需要您的同意,才能访问蓝牙NSAppleMusicUsageDescriptionApp需要您的同意,才能访问媒体资料库
34、控件设置边框
_describText.layer.borderColor = [[UIColor colorWithRed:215.0 / 255.0 green:215.0 / 255.0 blue:215.0 / 255.0 alpha:1] CGColor];
_describText.layer.borderWidth = 1.0;
_describText.layer.cornerRadius = 4.0;
_describText.clipsToBounds = YES;
35、//隐藏电池条的方法
-(BOOL)prefersStatusBarHidden{
return YES;
}
36、延时操作
[NSThread sleepForTimeInterval:2];
方法二:
[self performSelector:@selector(delayMethod) withObject:nil afterDelay:1.5];
37、系统风火轮:
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO; //隐藏
38、//didSelectRowAtIndexPath:方法里面找到当前的Cell
AssessMentCell * cell = [tableView cellForRowAtIndexPath:indexPath];
39、navigation上返回按钮的颜色以及返回按钮后面文字去掉
//返回按钮后边文字去掉
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60)
forBarMetrics:UIBarMetricsDefault];
//设置左上角返回按钮的颜色
self.navigationController.navigationBar.tintColor = UIColorFromRGB(0x666666);
40、lineBreakMode //设置文字过长时的显示格式
label.lineBreakMode = NSLineBreakByCharWrapping;以字符为显示单位显
示,后面部分省略不显示。
label.lineBreakMode = NSLineBreakByClipping;剪切与文本宽度相同的内
容长度,后半部分被删除。
label.lineBreakMode = NSLineBreakByTruncatingHead;前面部分文字
以……方式省略,显示尾部文字内容。
label.lineBreakMode = NSLineBreakByTruncatingMiddle;中间的内容
以……方式省略,显示头尾的文字内容。
label.lineBreakMode = NSLineBreakByTruncatingTail;结尾部分的内容
以……方式省略,显示头的文字内容。
label.lineBreakMode = NSLineBreakByWordWrapping;以单词为显示单位显
示,后面部分省略不显示。
Camera+ ($3)
即使更新到最新版本的 iOS 系统,苹果原生的相机软件也是比较弱鸡的。还好我们有 Camera+,可以调节曝光以及其他复杂的操作,比如连续闪光,正面闪光,触摸对焦调整,6 倍数码变焦,定时器和预设滤镜。而且软件的操作界面非常友好,操作非常便捷,随时可以将照片上传到 snapping 或者其他社交媒体平台。
ProCamera ($5)
在 iOS 8 发布的时候,开发者 Cocologics 决定放弃更新现有的 ProCamera 软件,然后重做一款全新的摄影软件。这个全新版本的 ProCamera——现已经针对 iOS10 进行优化——操作界面仍旧简单快捷,但却可以实现非常复杂的操作:设置曝光时间,色调,ISO 感光度等。除了强大的曝光控制和 70 多种独特的滤镜特效,ProCamera 甚至还具有夜间照相机和全分辨率预览功能。
Darkroom
因为缺乏相关的美学基础,所以这个软件的名字可能会被大家误解。但是 Darkroom 确实像它的名字一样,通过设计一个黑色的界面,让你的照片看起来更加耀眼。这款软件和 Lightroom 比较类似,可以调节色相、饱和度和亮度(HSL)或者调整曲线。除此以外还整合一些其他软件的功能,比如集成了 VSCO 的所有滤镜。这款软件 iOS 应用商店的评分是 4.9 分,所以没啥可以犹豫的了——而且它还是免费的哟。
Halide ($5)
如果你是一名初学者,想一点点从自动模式进阶为手动模式,那么 Halide 就是你的不二之选了。自动模式可以轻松捕捉精彩瞬间,而峰值对焦工具,支持 RAW 格式照片可以帮助用户发挥极致的创意,同时软件的操作界面简单友好。Halide 甚至支持人像特效,功能媲美最新款 iPhone 的肖像模式。
Pro HDR X ($2)
ProHDR X 大概是所有 HDR 特效软件里面最全能的,没有之一。与之前版本不同,ProHDR X 重新设计了 UI 界面,降低操作门槛,让普通摄影爱好者也可以操作自如。ProHDR X 支持更为广泛的曝光调整控制以及色调匹配,而且可以将单反相机拍摄的照片(最高支持 2400 万像素)导入到软件的内置照片库。同时 ProHDR X 也提供了大量优秀的预设可供选择,如果需要,甚至可以进行数字缩放、裁剪、字幕和设置自拍定时器等操作。
Adobe Photoshop Express
说到照片后期处理,没人敢说比 Adobe 更专业。尽管他们的桌面版本软件享誉世界,但是手机上移动版本的操作种类比其他同类软件少了很多。但是这丝毫不影响 Adobe Photoshop Express 仍旧是市面上最佳的后期软件之一。软件支持常用的 Photoshop 功能如图层、选择工具和调整、添加文本、效果应用以及混合图像等。不过,很多功能只有在付费后才能使用。所以如果选择了 Adobe Photoshop Express,那么就要做好钱包出血的准备咯~
Adobe Lightroom
尽管 Adobe 公司的很多软件只支持较新版本的 iPhone,但这丝毫不能影响其在我们软件名单上举足轻重的地位,尤其是那些在旅途中对照片进行后期处理的摄影师们。Lightroom 会自动与桌面设备同步图像——无论是智能手机拍摄的图像还是单反拍摄的原始图像,都可以灵活使用各种熟悉的工具快速编辑、美化并且分享。在 iOS10 系统中,Lightroom 已经开始支持 RAW 格式的导入和编辑。
如果只字不提滤镜之王,我们整理的软件名单估计就没啥说服力了。或许有数十种软件可以实现相同的功能,但是 Instagram 始终保持最庞大的用户群体。Instagram 不仅提供了一系列经典滤镜可供使用,同时对照片进行评论、点赞或者分享,甚至可以直接将照片发给特定的好友。
Pixlr
网页版本的 Pixlr 一直都是最受大家喜爱的照片后期工具,好消息是 Pixlr 已经推出了手机版本软件。在调整照片大小时,Pixlr 支持从四个预先定义的尺寸中进行选择,并可进行裁剪、旋转、风格化并进行照片分享。灯光和叠加效果甚至可以改善心情,而一键调整则可以快速自动地完成后期工作。
Facetune 2
不是所有人都非常上相,况且很多时候你在 snap 上传你和你朋友照片的时候,和本人也是有区别的。通过 Facetune 2,你可以将任何「见光死」的自拍变成万人迷。软件支持多种美化,比如牙齿美白、去除污点和颜色校正,使面孔看起来非常完美,以便于上传到社交网络。最厉害的是,Facetune 2 甚至可以改变眼睛或者头发的颜色。
Photo Editor by Aviary
如果想要一个好用而且免费的后期软件,推荐使用 Photo Editor by Aviary。被 Adobe 公司收购后,软件得以强化很多复杂功能,并且操作界面更加友好。Photo Editor by Aviary 支持在线购买滤镜预设,而且有大量预设和其他资源可供选择。和 Facetune 类似,Aviary 也支持消除红眼、增白牙齿等功能。除此以外,还支持增加文字、替换颜色和社交网络。但是需要注意的是,Photo Editor by Aviary 已经超过 11 个月没有更新了,所以不支持近期发布手机的最新功能。同时未来也很难看到 Photo Editor by Aviary 的重大更新了。
Horizon Camera
我们一般情况下从不竖着手机拍摄视频。但是万一你的猪队友没有横向拍视频,Horizon Camera 就可以用来救场了。Horizon 可以强制手机只在横向时拍摄视频,即使旋转手机也可以保持水平角度不变。Horizon 支持 60 和 120 帧/秒的慢速模式,并允许以自定分辨率进行录制——当然,前提是在系统允许范围内。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流