我们以360手机助手中有一款叫“最美手电筒”,效果图:

通过图中手电筒的开关来开启或关闭闪光灯,OK,以下是实现此功能的代码:

public class MainActivity extends Activity implements OnClickListener {private ImageView iv_off_on;private ImageView iv_light;private Parameters parameter = null;private Camera camera = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);initView();initListener();}private void initListener() {iv_off_on.setOnClickListener(this);}private void initView() {iv_off_on = (ImageView) findViewById(R.id.iv_off_on);iv_light = (ImageView) findViewById(R.id.iv_light);iv_light.setVisibility(View.INVISIBLE);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.iv_off_on:if (iv_off_on.isSelected()) {// 关闭iv_off_on.setSelected(false);iv_light.setVisibility(View.INVISIBLE);parameter.setFlashMode(Parameters.FLASH_MODE_OFF);camera.setParameters(parameter);camera.release();} else {// 开启iv_off_on.setSelected(true);iv_light.setVisibility(View.VISIBLE);camera = Camera.open();camera.startPreview();parameter = camera.getParameters();parameter.setFlashMode(Parameters.FLASH_MODE_TORCH);camera.setParameters(parameter);}break;default:break;}}}

最后在AndroidManifest.xml中添加相应的权限:

<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.autofocus" />

转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/45504303 情绪控_

Android之如何以最简单方式开启闪光灯相关推荐

  1. android 服务器证书校验,Android HTTPS证书验证的简单方式

    1. 背景与需求 近期在做IP切换的HTTPS访问时,遇到了一些问题:客户端如何进行HTTPS的证书验证. 其实对于一般的项目基本都是做的单向验证,即在客户端证书或者HOST的验证:对于金融.银行相关 ...

  2. android开启gps功能,android 打开GPS的几种方式

    1.在讨论打开gps的之前先看下如何检测gps的开关情况: 方式一: boolean gpsEnabled = locationManager.isProviderEnabled(LocationMa ...

  3. Android网络之数据解析----SAX方式解析XML数据

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. Android 依赖注入可以更简单 —— 新版本 Dagger 2 使用教学

    今年 3 月 21 号 Dagger 2 在 2.10 版本之后针对 Android 方面做了很大的优化,使用方法也随之有了不少变化.本次改动除了让 Dagger 2 的使用更加符合控制反转原则,还针 ...

  5. Android原生绘图进度条+简单自定义属性代码生成器

    零.前言 1.感觉切拼字符串是个很有意思的事,好的拼接方式可以自动生成一些很实用的东西 2.本文自定义控件并不是很高大上的东西,目的在于计录自定义控件的书写规范与行文流程 3.建议大家自定义控件时自定 ...

  6. android 退出应用没有走ondestory方法,Android退出应用最优雅的方式(改进版)

    我们先来看看几种常见的退出方法(不优雅的方式) 一.容器式 建立一个全局容器,把所有的Activity存储起来,退出时循环遍历finish所有Activity import java.util.Arr ...

  7. android http协议添加Authorization认证方式

      今天,简单讲讲android里如何使用http请求时在头部添加Authorization认证方式. 其实也很简单,之前需要做一个功能,在android去使用http访问设备,但是每次的访问 ...

  8. android后台自播放音乐,Android实现后台播放音乐(Service方式)

    Android实现后台播放音乐(Service方式) 实现: 在res文件夹下添加raw文件夹,添加mp3/4格式的音乐文件 注意命名规则只能是a-z,0-9,和下划线_ 不能大写字母和- Andro ...

  9. android.cat 镜像,Android开发利器之pidcat安装方式

    介绍pidcat: pidcat 是Android届JakeWharton大神开发的一款命令行工具,堪称Android开发利器,它能方便Android程序猿捕获日志,过滤日志,定位程序问题,超级好用. ...

最新文章

  1. 负载过高之外网抓数据
  2. 获取json的节点名称
  3. Java多线程之Semaphore用法
  4. 产品经理之深度学习促进产品(二)
  5. WinAPI: 钩子回调函数之 CallWndProcRetProc
  6. 迁移用友U8 ERP服务器
  7. linux下电子词典里的扩展存储卡不能访问到的问题
  8. apache ActiveMQ反序列化漏洞(CVE-2015-5254)复现
  9. linux能力集机制,Linux能力(capability)机制的继承
  10. 2021-02-06-身高与车架大小
  11. Unity实现在白板上绘画涂鸦
  12. Prometheus入门使用(三)
  13. 希望我这是最后一次谈SaaS
  14. 【宏】【DEBUG宏】
  15. java 微信 摇一摇红包_微信小程序“摇一摇”的实例代码
  16. java -英语单词接龙
  17. 智慧城市,以人为本的新世界
  18. JLINK和STlink使用SWD接口时连接或烧录出现故障解决问题根源解决办法
  19. 「UG/NX」CAP工具箱自动安装NX方法教程
  20. windows下TortoiseGit安装教程

热门文章

  1. python网站设计开题报告_XX网站设计开题报告范文
  2. python线性加权回归_python深度学习-tensorflow实现一个线性回归的案例
  3. 亿条数据读取工具_运维数据的统一治理(上)
  4. 实战 PK!RTX2080Ti 对比 GTX1080Ti 的 CIFAR100 混合精度训练
  5. .NET Core微服务之基于Ocelot+IdentityServer实现统一验证与授权
  6. BZOJ2351[BeiJing2011]Matrix——二维hash
  7. arm linux中添加开机启动
  8. GSM协议编号及其内容
  9. 【转】C#对象的深拷贝与浅拷贝
  10. 【转载】ATI显卡在Ubuntu下设置方法(很全面)