androidstudio二维码libzxing
来源:互联网 发布:乌龙山伯爵 知乎 编辑:程序博客网 时间:2024/06/05 03:24
第一步:需要引入libzxing工程
选择菜单:File/new/import module
第二步:将libzxing工程引入到项目中
右键项目选择菜单open module settings
选择app/ dependencies/+加号/Module dependencies,把libzxing选择并添加进去
选择菜单:File/new/import module
第二步:将libzxing工程引入到项目中
右键项目选择菜单open module settings
选择app/ dependencies/+加号/Module dependencies,把libzxing选择并添加进去
注意:引入后我们不需要手工添加CAMERA、VIBRATE的权限,因为我们引入的libzxing模块的AndroidManifest.xml中已经帮我们添加好需要的权限
在程序里调用
startActivityForResult(new Intent(MainActivity.this, CaptureActivity.class),0);
- package cq.cake.libzxing;
- import android.content.Intent;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.os.Bundle;
- import android.support.v7.app.AppCompatActivity;
- import android.view.View;
- import android.widget.CheckBox;
- import android.widget.EditText;
- import android.widget.ImageView;
- import android.widget.TextView;
- import com.xys.libzxing.zxing.activity.CaptureActivity;
- import com.xys.libzxing.zxing.encoding.EncodingUtils;
- /**
- * 二维码工具,libzxing的使用
- */
- public class MainActivity extends AppCompatActivity {
- private TextView tvResult;
- private EditText etText;
- private ImageView iv2Code;
- private CheckBox checkLogo;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- initView();
- }
- private void initView() {
- tvResult = (TextView) findViewById(R.id.tv_result);
- etText = (EditText) findViewById(R.id.et_text);
- iv2Code = (ImageView)findViewById(R.id.iv_2code);
- checkLogo = (CheckBox) findViewById(R.id.cb_logo);
- }
- /**
- * 开启二维码扫描
- * @param view
- */
- public void scan(View view){
- startActivityForResult(new Intent(MainActivity.this, CaptureActivity.class),10001);
- }
- /**
- * 得到二维码扫描返回的数据
- * @param requestCode
- * @param resultCode
- * @param data
- */
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- if (resultCode==RESULT_OK){
- Bundle bundle = data.getExtras();
- String result = bundle.getString("result");
- tvResult.setText(result);
- }
- }
- /**
- * 生成二维码
- * @param view
- */
- public void build2Code(View view){
- //生成一个宽高500的二维码,根据是否选中logo,来确定是否添加logo
- Bitmap qrCode = EncodingUtils.createQRCode(etText.getText().toString(), 500, 500, checkLogo.isChecked() ? BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher) : null);
- iv2Code.setImageBitmap(qrCode);
- }
- }
阅读全文
0 0
- androidstudio二维码libzxing
- LibZXing 二维码
- LibZXing二维码工具
- LibZXing二维码扫描/生成库,基于ZXing最新版3.3的封装
- LibZXing二维码扫描/生成库,基于ZXing最新版3.3的封装
- AndroidStudio集成二维码扫描
- AndroidStudio导入zxing包实现二维码扫描
- 在AndroidStudio中引入ZXing扫描二维码的简单实现
- androidstudio
- AndroidStudio
- AndroidStudio
- AndroidStudio
- AndroidStudio
- AndroidStudio
- androidstudio
- AndroidStudio
- androidstudio
- [AndroidStudio]
- mysql源码学习笔记:插件的安装和卸载
- 三国时期十大谋士
- 用JavaScript实现旋转轮播图
- CentOS 禁用与开启触摸板
- c++中抽象类和接口
- androidstudio二维码libzxing
- POJ 1005 I think I Need a Houseboat (水题)
- 安装 Genymotion
- 文本编辑器
- linux 修改 grub menu 倒计时秒数
- 内核源码阅读(六)内核线程
- 数论刷题
- HDU 5936 && 2016CCPC杭州 D: Difference(折半枚举)
- 提示“i386-pc/normal.mod not found” ,centos7 卡在 grub rescue 无法开机