美文网首页
打开手机手电筒

打开手机手电筒

作者: 温水煮青蛙a | 来源:发表于2018-12-01 10:13 被阅读0次

import<AVFoundation/AVFoundation.h>//打开手电筒 需要框架

//按钮触发方法

-(void)flashlightButtonAction:(UIButton *)button
{
    NSLog(@"打开手电筒");
    Class captureDeviceClass = NSClassFromString(@"AVCaptureDevice");
    if(captureDeviceClass != nil) {
        AVCaptureDevice*device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
        if([device hasTorch]) { // 判断是否有闪光灯
            // 请求独占访问硬件设备
            [device lockForConfiguration:nil];
            if(!button.selected) {
                [device setTorchMode:AVCaptureTorchModeOn];//手电筒开
            }else{
                [device setTorchMode:AVCaptureTorchModeOff]; // 手电筒关
            }
            // 请求解除独占访问硬件设备
            [device unlockForConfiguration];
        }
    }
    button.selected = !button.selected;
}

// 上面用到了NSClassFromString(NSString*aClassName) 做一下记录
FOUNDATION_EXPORT Class _Nullable NSClassFromString(NSString *aClassName);
如果你要获取的类不存在,则会返回一个nil对象,程序不会崩溃,适用于进行你不确定类的初始化。

NSClassFromString应用

通过字符串拿到类对象 如果拿不到则是nil

有的时候做一些页面的po判断
//拿到AViewController这个类对象
Class tempVC = NSClassFromString(@"AViewController");
    for (UIViewController *controller in self.navigationController.viewControllers) {
//遍历中做判断  有tempVC时 pop返回
        if ([controller isKindOfClass:tempVC]) {
            [self.navigationController popToViewController:controller animated:YES];
            break;
        }
    }

相关文章

  • 打开手机手电筒

    import//打开手电筒 需要框架 //按钮触发方法 ...

  • 华为和苹果哪个更亮?今天带你去实验室寻找答案

    最近总是听到一种声音: “我有手机手电筒,还要手电筒干嘛呀” “手机手电筒就够用了嘛” “手机手电筒......挺...

  • 第七章——千只鹤

    “哈,也是。闲的没事带什么手电筒呢?”秦越掏出自己的核能手机,打开了手电筒。微弱的光线很快就被黑暗吞噬,未知的深处...

  • 手机显示:环境光较亮

    本人使用的手机款式是oppo reno,今天打开了手电筒,接着来到厕所后,这时我打开了卫生间的灯,却没有...

  • 灰尘

    灰尘到处都是。但你却看不见他。 可以说跟空气一般摸不着看不见,但你把手机的手电筒打开,或者用手电筒照着空气...

  • 手电筒打开(button同时设置文字和图片,并且点击的时候同时变

    //打开手电筒UIButton flashlightBtn = [UIButton createButtonFra...

  • 漫步随笔

    一 昨天晚上出去散步,路边草丛里悉悉作响,估计是夜行动物出来觅食了。打开手机手电筒...

  • 追一本书

    文 梁树丽 晚上关了灯,周围一片漆黑。 我趴在床上,打开手机的手电筒,再打开书,我陷入其中不可自拔。 为什么...

  • 手机手电筒只能照明?其实另有用途,看完觉得十几年手机白玩了

    现在的手机上基本都有手电筒,但是通常我们使用手电筒只是用来照明。殊不知,其实手机手电筒还有这几个大用处,看完肯定不...

  • 手机

    前日凌晨打开手机手电筒,早上醒来发现没关,是亮着!!!手机电量也由原来的满格电变为低于10%。 十分担心手机电池会...

网友评论

      本文标题:打开手机手电筒

      本文链接:https://www.haomeiwen.com/subject/nzslcqtx.html