zoukankan      html  css  js  c++  java
  • Android开发----------- 手电筒改进版本号

    在之前的基础上

    在 res 目录以下: 加入一个 drawable/local_me.xml

    localme_cml

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_checked="true"
            android:drawable="@drawable/on" /> <!-- pressed -->
        <item android:drawable="@drawable/off" /> <!-- default/unchecked -->
    </selector>


    主程序:


    package com.example.handlightactivity;
    
    import android.app.Activity;  
    import android.hardware.Camera;  
    import android.hardware.Camera.Parameters;  
    import android.os.Bundle;  
    import android.os.Process;  
    import android.view.View;  
    import android.view.View.OnClickListener;  
    import android.view.WindowManager;  
    import android.widget.ToggleButton;  
      
    /**
     * 
     * @author love
     * 
     * 原理:
     * 就是通过 点击button,
     *   当 点击button的时候   打开闪光灯。
     *   关闭 button的时候    关闭闪光灯
     * 
     * 
     * */
    
    public class MainActivity extends Activity implements OnClickListener {  
    	
        private ToggleButton toggleButton;  
      
        private Camera camera = Camera.open();  
        /** Called when the activity is first created. */  
        @Override  
        public void onCreate(Bundle savedInstanceState) {  
            super.onCreate(savedInstanceState);  
            setContentView(R.layout.activity_main);  
      
            toggleButton = (ToggleButton) this.findViewById(R.id.toggleButton1);  
            toggleButton.setOnClickListener(this);  
              
            //保持屏幕  
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);  
        }  
      
        @Override  
        public void onClick(View v) {  
            ToggleButton tb = (ToggleButton) v;  
            Camera.Parameters param = camera.getParameters();  
            if(!tb.isChecked()){  
    //        	open the  camera flash!
                param.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);  
                toggleButton.setBackgroundColor(0x30ffffff);  
    //          on open on.jpg
                tb.setBackgroundDrawable(getResources().getDrawable(R.drawable.on));
            }else{  
                param.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);  
                toggleButton.setBackgroundColor(0xffffffff); 
    //           off  open the off.jpg
                tb.setBackgroundDrawable(getResources().getDrawable(R.drawable.off));
            }  
            camera.setParameters(param);  
        }  
      
        @Override  
        protected void onPause() {  
    //      camera.release();  
    //      Process.killProcess(Process.myPid());  
            super.onPause();  
        }  
    }


    效果图:




  • 相关阅读:
    yepnope.js 异步加载资源文件
    省心选房5步走 买房前先算经济账还要多打听
    css中inline、block、inlineblock的区别
    web标准化设计:常用的CSS命名规则
    用css的手段解决Google Chrome浏览器的字体最小12px问题
    HTML元素的默认样式
    CSS中 常见中文字体的英文名称
    《重构 改善既有代码的设计》书摘
    手机号码匹配规则
    WEB开发——大批量数据导出经验谈
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4311886.html
Copyright © 2011-2022 走看看