iOS 中判断当前设备的相机是否可用

在iOS 开发中,经常需要调用相机来扫描类似二维之类的东西,在调用之前,首先应该判断当前设备的相机是否可用;

下面直接上代码:(swift中的写法)

 1 class WNCommonTool: NSObject {
 2     /**
 3
 4     判断当前设备的相机是否可用
 5
 6     :returns: 当前设备的相机是否可用
 7
 8     */
 9
10     class func isCameraAvailable() -> Bool{
11
12         return UIImagePickerController.isCameraDeviceAvailable(.Rear) &&
13
14                UIImagePickerController.isSourceTypeAvailable(.Camera)
15     }
16
17 }

使用方法如下(在swift 中):

 1 // MARK: 扫描二维码
 2
 3     func scanQR(){
 4
 5         if WNCommonTool.isCameraAvailable(){
 6
 7             // doSomething  you like
 8
 9         }else{
10
11             UIAlertView(title: "温馨提示", message: "当前设备相机不可用", delegate: self, cancelButtonTitle: "确定").show()
12         }
13
14     }
时间: 2024-10-25 01:20:29

iOS 中判断当前设备的相机是否可用的相关文章

iOS开发 - 如何获取设备的总容量和可用容量 网络运营商 3g/wifi判断 手机型号

镔哥最近开发需获取手机容量,其实这你是一个很好的例子 //硬盘容量 - (float)getTotalDiskSpace { float totalSpace; NSError * error; NSDictionary * infoDic = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[self getHomeDirectory] error: &error]; if (infoDic) { NSNumber *

iOS中判断设备系统版本

在iOS开发中,经常要考虑系统的向下兼容,如果使用了低版本不存在的API ,则不能向下兼容,这时候如果想兼容低版本,就需要根据当前设备的版本进行不同的处理,在低版本中可能要牺牲一些新功能. 下面以UITabBarItem修改字体为例,说明一下如何向下兼容 if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0) { // iOS 5 code for(UITabBarItem *tabBarItem in self.tab

iOS中 读取相册,调用系统相机 技术分享

技术内容:分别读取相册以及调取相机,将图片显示到imageView上 布局: 1.创建imageView 和 button 并为button一个关联pickerImage的事件 [objc] view plaincopy <div style="text-align: left;"><span style="font-family: Helvetica; -webkit-text-stroke-width: initial;">    sel

iOS 中判断应用程序是否为第一次打开

第一步:在AppDelegate中当应用启动完成后加入一下代码: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //NSUserDefaults非常好用,并不需要用户在程序中设置NSUserDefaults的全局变量,需要在哪里使用NSUserDefaults的数据,那么就在哪里创建一个NSUserDefaults对象,然

iOS中判断两个圆是否重叠

#import <Foundation/Foundation.h> #import <math.h> @interface Point2D : NSObject { double _x; // x值 double _y; // y值 } // x值的getter和setter - (void)setX:(double)x; - (double)x; // y值的getter和setter - (void)setY:(double)y; - (double)y; // 同时设置x和y

如何在代码中判断当前设备是iPhone 4/4S还是iPhone 5?

+ (NSString*)deviceString {     // 需要#import "sys/utsname.h"     struct utsname systemInfo;     uname(&systemInfo);     NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];          if ([dev

iOS中 判断对象类型的一些方法

-(BOOL)  isKindOf:class 表示:对象是否为class或其父类 -(BOOL) isMemberOf:class 表示:对象是否为class -(BOOL) respondsToSelector:selector 表示:对象是否能够响应selector指定的方法 -(BOOL) instanceRespondToSelector:selector 表示:指定的对象是否能响应selector? -(BOOL) isSubclassOfClass:class 表示:对象是clas

正则表达式在iOS中的运用(附手机密码邮箱等正则判断)

一.什么是正则表达式 正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式.正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分.它可以迅速地用极简单的方式达到字符串的复杂控制. 二.正则表达式的语法 看几个例子:手机号码,密码(3-30个字符,不允许特殊字符),邮箱判断. - (BOOL)validatePhoneNumber:(NSString *) textString { NSString* number=@"^1[3|4|5|7|8][0-9

ios中利用NSDateComponents、NSDate、NSCalendar判断当前时间是否在一天的某个时间段内。

应用中设置一般会存在这样的设置,如夜间勿扰模式,从8:00-23:00,此时如何判断当前时间是否在该时间段内.难点主要在于如何用NSDate生成一个8:00的时间和23:00的时间,然后用当前的时间跟这俩时间作对比就好了. 下面提供两条思路: 法1.用NSDate生成当前时间,然后转为字符串,从字符串中取出当前的年.月.日,然后再拼上时.分.秒,然后再将拼接后的字符串转为NSDate,最后用当前的时间跟自己生成的俩NSDate的时间点比较.(该方法比较笨,也不难,但看起来有点太菜了,看上去不怎么