android將閃光燈作為手電筒的實現代碼

nwbg 9年前發布 | 1K 次閱讀 Java Android

手電筒是使用Android手機的閃光燈,所以需添加權限<uses-permission android:name="android.permission.CAMERA" />

import com.jwzhangjie.test.R;

import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

/**

  • 手電筒
  • @author jwzhangjie
  • */
    public class CameraLight extends Activity{

    private Button openLight;
    private boolean status = false;
    private Camera camera;
    private Parameters parameters;
    private CameraLight instance;
    @Override
    protected void onCreate(Bundle savedInstanceState) {

     super.onCreate(savedInstanceState);  
     setContentView(R.layout.cameralight);  
     instance = this;  
     camera = Camera.open();  
     openLight = (Button)findViewById(R.id.openLight);  
     openLight.setOnClickListener(new OnClickListener() {  
         @Override  
         public void onClick(View v) {  
             if (!status) {  
                 openLight.setText("關閉");  
                 status = true;  
                 new Thread(new TurnOnLight()).start();  
             }else {  
                 status = false;  
                 openLight.setText("打開");  
                 instance.parameters.setFlashMode("off");  
                 instance.camera.setParameters(instance.parameters);  
             }  
         }  
     });  
    
    

    }

private class TurnOnLight implements Runnable{  
    @Override  
    public void run() {  
        instance.parameters = instance.camera.getParameters();  
        instance.parameters.setFlashMode("torch");  
        instance.camera.setParameters(instance.parameters);  
    }  
}  

} </pre>

 本文由用戶 nwbg 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!