首先是MainActivity.java部分:

packagecom.qrcode;importcom.google.zxing.WriterException;importcom.zxing.activity.CaptureActivity;importcom.zxing.encoding.EncodingHandler;importandroid.app.Activity;importandroid.content.Intent;importandroid.graphics.Bitmap;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.ImageView;importandroid.widget.TextView;importandroid.widget.Toast;publicclassMainActivityextendsActivity{privateTextViewresultTextView;privateEditTextqrStrEditText;privateImageViewqrImgImageView;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);resultTextView=(TextView)this.findViewById(R.id.tv_scan_result);qrStrEditText=(EditText)this.findViewById(R.id.et_qr_string);qrImgImageView=(ImageView)this.findViewById(R.id.iv_qr_image);ButtonscanBarCodeButton=(Button)this.findViewById(R.id.btn_scan_barcode);scanBarCodeButton.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewv){IntentopenCameraIntent=newIntent(MainActivity.this,CaptureActivity.class);startActivityForResult(openCameraIntent,0);}});ButtongenerateQRCodeButton=(Button)this.findViewById(R.id.btn_add_qrcode);generateQRCodeButton.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewv){try{StringcontentString=qrStrEditText.getText().toString();if(!contentString.equals("")){BitmapqrCodeBitmap=EncodingHandler.createQRCode(contentString,350);qrImgImageView.setImageBitmap(qrCodeBitmap);}else{Toast.makeText(MainActivity.this,"Textcannotbeempty",Toast.LENGTH_SHORT).show();}}catch(WriterExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}});}@OverrideprotectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){super.onActivityResult(requestCode,resultCode,data);if(resultCode==RESULT_OK){Bundlebundle=data.getExtras();StringscanResult=bundle.getString("result");resultTextView.setText(scanResult);}}}

下面就是构成拍摄页面的部分由于很多都是继承的代码,这里我就不粘贴了,给大家一个图看一下,下面放出整理后的代码。

最后别忘了给权限部分:

<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.qrcode"android:versionCode="1"android:versionName="1.0"><uses-sdkandroid:minSdkVersion="7"/><uses-permissionandroid:name="android.permission.VIBRATE"/><!--震动权限--><uses-permissionandroid:name="android.permission.CAMERA"/><uses-featureandroid:name="android.hardware.camera"/><!--使用照相机权限--><uses-featureandroid:name="android.hardware.camera.autofocus"/><!--自动聚焦权限--><applicationandroid:icon="@drawable/icon"android:label="@string/app_name"><activityandroid:name=".MainActivity"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><!--隐藏键盘--><!--全屏--><activityandroid:configChanges="orientation|keyboardHidden"android:name="com.zxing.activity.CaptureActivity"android:screenOrientation="portrait"android:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:windowSoftInputMode="stateAlwaysHidden"></activity></application></manifest>

效果图:


更多相关文章

  1. android屏蔽返回键和Home键
  2. Android如何获取开机启动项列表
  3. Android创建快捷方式(shortcut)
  4. android 根据Uri获取文件绝对路径
  5. Android获取Manifest中元素的值
  6. 网页链接拉起Unity Android和iOS APP
  7. 用contentResolver+ListView+mediaPlayer实现简单Android音乐播
  8. android studio 各种令人费解的问题
  9. android inputreader 部分对event数据的处理

随机推荐

  1. android 闪光灯控制
  2. Android中使用Intent实现界面跳转
  3. 【移动开发】Android中各种xml汇总
  4. 关于android.R.id.text1
  5. android界面开发小结——android笔记---
  6. Android Studio解决plugin with id 'andr
  7. 动态绘制CheckedTextView
  8. Android UID 问题 uid 改变进行了覆盖安
  9. 介绍三个Android支持库控件:TabLayout+Vie
  10. Android百度地图开发(三)范围搜索