频道澳门葡京手机版网址
登录注册
澳门葡京手机版网址 > 澳门葡京手机版网址 > 移动开发 > 其他 > 正文
二维码扫描+输入框输入内容,点击按钮生成二维码
2018-06-20 03:01:45         来源:chenyibai的博客  
收藏   我要投稿

二维码扫描+输入框输入内容,点击按钮生成二维码。

\

实现步骤:

1. 倒libzxing包

2. 在Settings.gradle中添加??

include ':app','libzxing'

3.添加依赖

//布局文件




 

  

//核心代码

public class ShowActivity extends AppCompatActivity {

 private TextView resultTextView;
 private EditText qrStrEditText;
 private ImageView qrImgImageView;
 private CheckBox mCheckBox;
 private Button scanBarCodeButton;
 private Button generateQRCodeButton;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_show);
  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);
  mCheckBox = (CheckBox) findViewById(R.id.logo);
  scanBarCodeButton = (Button) this.findViewById(R.id.btn_scan_barcode);
  generateQRCodeButton = (Button) this.findViewById(R.id.btn_add_qrcode);

  //扫描
  //扫描
  scanBarCodeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
 if (ContextCompat.checkSelfPermission(ShowActivity.this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
  // 申请CAMERA权限
  ActivityCompat.requestPermissions(ShowActivity.this, new String[]{Manifest.permission.CAMERA}, 1);
 }else{
  //跳转到zxing的扫描页面
  // 打开扫描界面扫描条形码或二维码
  Intent openCameraIntent = new Intent(ShowActivity.this, CaptureActivity.class);
  startActivityForResult(openCameraIntent, 0);
 }
}
  });
  //根据输入的字符串生成二维码
  generateQRCodeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
 //1读et的内容 2生成bitmap 3设置给iv
 String contentString = qrStrEditText.getText().toString();
 if (!TextUtils.isEmpty(contentString)) {
  // 根据字符串生成二维码图片并显示在界面上,第二个参数为图片的大小(350*350)
  Bitmap qrCodeBitmap = EncodingUtils.createQRCode(contentString, 350, 350,mCheckBox.isChecked() ? BitmapFactory.decodeResource(getResources(), R.drawable.ac3
  ) : null);
  qrImgImageView.setImageBitmap(qrCodeBitmap);
 } else {
  Toast.makeText(ShowActivity.this, "Text can not be empty", Toast.LENGTH_SHORT).show();
 }
}
  });
 }


 @Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  //接受zixing扫描页面的字符串扫描结果
  if (resultCode == RESULT_OK) {
Bundle bundle = data.getExtras();
String scanResult = bundle.getString("result");
resultTextView.setText(scanResult);
  }
 }

 //用户是否同意权限的回调
 @Override
 public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
  super.onRequestPermissionsResult(requestCode, permissions, grantResults);

  //如果同意直接打开相机
  //跳转到zxing的扫描页面
  // 打开扫描界面扫描条形码或二维码
  Intent openCameraIntent = new Intent(ShowActivity.this, CaptureActivity.class);
  startActivityForResult(openCameraIntent, 0);
 }
}
点击复制链接 与好友分享!回澳门葡京手机版网址澳门葡京手机版网址
上一篇:git命令怎么查看用户名和修改用户名
下一篇:Cordova配置入门教程
相关文章
图文推荐
文章
推荐
· 5月5日App Store排名大地震之后的五个
· 林立祥:分享wins1818的网络营销推广方
· 盘点2014年中国互联网十大成功营销案例
· 云爪分析:企业网络营销如何评估外包公
· QQ空间营销背后的用户多体验
· 十大网络推广企业特点解读
· 微博营销:安妮告诉大家依然是时代前沿
· 浅谈:地方网站推广大招之——三板斧
· win7激活工具
· win10激活工具
· win7激活工具旗舰版
· office2010激活密钥
· windows7激活密钥
· office2010激活工具
· 小马激活工具
· win10激活工具
点击排行

关于大家 | 联系大家 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 澳门葡京手机版网址_澳门新莆京娱乐_www.88807.com - 点此进入--致力于做实用的IT技术学习网站

XML 地图 | Sitemap 地图