Android手电筒案例
16lz
2021-01-23
最近在学习Android的开发,写了个手电筒的案例,分享一下!
//Activity.xmlpackagecom.fq.flashlight;importandroid.app.Activity;importandroid.app.AlertDialog;importandroid.content.DialogInterface;importandroid.hardware.Camera;importandroid.hardware.Camera.Parameters;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.TextView;publicclassLightActivityextendsActivity{Buttonbutton=null;//创建Button类型的变量TextViewtextView=null;//创建TextView类型的变量Cameracamera=null;//创建Camera类型的变量Parametersparams=null;//创建Parameters类型的变量Booleanflag=true;//创建Boolean类型的变量,用于做是否开启的判断@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_light);button=(Button)findViewById(R.id.button);//获取Button对象textView=(TextView)findViewById(R.id.textView);//获取TextView对象button.setOnClickListener(newOnClickListener(){//点击事件@OverridepublicvoidonClick(Viewv){if(flag){camera=Camera.open();//获取摄像头params=camera.getParameters();params.setFlashMode(Parameters.FLASH_MODE_TORCH);camera.setParameters(params);camera.startPreview();textView.setText(R.string.alert_on);button.setText(R.string.button_off);flag=false;}else{params.setFlashMode(Parameters.FLASH_MODE_OFF);camera.setParameters(params);camera.stopPreview();camera.release();textView.setText(R.string.alert_off);button.setText(R.string.button_on);flag=true;}}});}publicvoidonBackPressed(){//super.onBackPressed();System.out.println("sdsfs");newAlertDialog.Builder(this).setTitle("确定退出吗?").setIcon(R.drawable.ic_launcher).setPositiveButton("OK",newDialogInterface.OnClickListener(){@OverridepublicvoidonClick(DialogInterfacearg0,intarg1){//TODOAuto-generatedmethodstubLightActivity.this.finish();System.exit(0);}}).setNegativeButton("Cancel",newDialogInterface.OnClickListener(){@OverridepublicvoidonClick(DialogInterfacearg0,intarg1){//TODOAuto-generatedmethodstub}}).show();}}
<!--strings.xml--><?xmlversion="1.0"encoding="utf-8"?><resources><stringname="app_name">BlueOcean手电筒</string><stringname="hello_world">Helloworld!</string><stringname="action_settings">Settings</string><stringname="alert_on">手电筒当前状态:开启</string><stringname="alert_off">手电筒当前状态:关闭</string><stringname="button_on">开启手电</string><stringname="button_off">关闭手电</string><stringname="author">Author:BlueOcean</string></resources>
<!--layout.xml--><?xmlversion="1.0"encoding="utf-8"?><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><TextViewandroid:id="@+id/textView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop="34dp"android:text="@string/alert_off"android:textSize="22sp"/><Buttonandroid:id="@+id/button"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/textView"android:layout_centerHorizontal="true"android:layout_marginTop="26dp"android:text="@string/button_on"/><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignRight="@+id/textView"android:layout_centerVertical="true"android:text="@string/author"android:textAppearance="?android:attr/textAppearanceSmall"/></RelativeLayout>
<!--manifest.xml--><?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.fq.flashlight"android:versionCode="1"android:versionName="1.0"><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="21"/><uses-permissionandroid:name="android.permission.CAMERA"/><uses-permissionandroid:name="android.permission.FLASHLIGHT"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme"><activityandroid:name=".MainActivity"android:label="@string/app_name"></activity><activityandroid:name=".LightActivity"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity></application></manifest>
更多相关文章
- android adb配置环境变量
- Android 签名类型
- Android jni系统变量、函数、接口定义汇总
- android各种声音类型级数设定及默认值
- mac 下Android及ant的环境变量配置
- Mac上如何使用adb命令进行操作?(Android studio 环境变量配置)