//图片用Draw-9-Path处理了下。package com.myflashlight;import android.hardware.Camera;import android.os.Bundle;import android.app.Activity;import android.view.KeyEvent;import android.view.Menu;import android.view.View;import android.view.Window;import android.view.WindowManager;import android.widget.Button;import android.widget.Toast;public class MyFlashlight extends Activity {Button on_off;    Camera camera;    public static final long longTime=2000,shortTime=1000,pauseTime=200;    boolean isOn=false;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);noTitle();setContentView(R.layout.my_flashlight);initView();addListener();}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.my_flashlight, menu);return true;}//销毁进程@Overrideprotected void onDestroy() {System.exit(0);// TODO Auto-generated method stubsuper.onDestroy();}//返回键退出@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {// TODO Auto-generated method stub    while (keyCode==event.KEYCODE_BACK) {    onDestroy();}return super.onKeyDown(keyCode, event);}//去标题    public void noTitle(){requestWindowFeature(Window.FEATURE_NO_TITLE);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);    }    private void initView(){on_off=(Button) findViewById(R.id.on_off);}private void addListener(){on_off.setOnClickListener(new FlashlightOnClick());}private class FlashlightOnClick implements View.OnClickListener{@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.on_off:if(!isOn){BtnStyle_Off();openFlashlight();}else if(isOn){BtnStyle_On();closeFlashlight();}break;default:break;}}}//开关开启样式private void BtnStyle_On(){on_off.setText(R.string.turnOn);on_off.setTextColor(getResources().getColor(R.color.darkblue));on_off.setBackgroundResource(R.drawable.open);}//开关关闭样式private void BtnStyle_Off(){on_off.setText(R.string.turnOff);on_off.setTextColor(getResources().getColor(R.color.darkred));on_off.setBackgroundResource(R.drawable.close);}//开启手电筒private void openFlashlight(){camera=Camera.open();Camera.Parameters parameters=camera.getParameters();parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);camera.setParameters(parameters);camera.startPreview();isOn=true;Toast.makeText(MyFlashlight.this,"已开启", 2000).show();}//关闭手电筒private void closeFlashlight(){Camera.Parameters parameters=camera.getParameters();parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);camera.setParameters(parameters);camera.stopPreview();camera.release();isOn=false;Toast.makeText(MyFlashlight.this,"已关闭", 2000).show();}}

 

更多相关文章

  1. Android 5中样式对话框
  2. Dialog的样式
  3. Android中按钮点击后背景改变样式
  4. Android 打开闪光灯(手电筒)
  5. Android手电筒小程序实现代码
  6. CheckBox自定义样式
  7. Android主题和样式
  8. Android 手电筒源码
  9. 怎么给Android(安卓)控件添加边框(样式)?

随机推荐

  1. FFmpeg(3.3.2)移植Android平台
  2. Android之Sqlite的增删查操作
  3. Android——Listview不用notifydatasetch
  4. 2019最新Android常用开源库总结
  5. Android事件分发机制深度解析(View篇)
  6. 广播接收器 broadcast sendOrderedBroadc
  7. Facebook发布React Native for Android
  8. Android 安全问题
  9. Android生命周期图文介绍
  10. Android 测试上传头像到服务器