package com.gaoo.zxingcode;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.view.View;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.xys.libzxing.zxing.activity.CaptureActivity;
import com.xys.libzxing.zxing.encoding.EncodingUtils;
/**
* 二维码的 学习和使用
*/
public class MainActivity extends AppCompatActivity {
Button btnScan, btnMake;
WebView webview;
TextView show;
ImageView image;
EditText input;
CheckBox logo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnScan = (Button) findViewById(R.id.btn_scan);
btnMake = (Button) findViewById(R.id.btn_make);
show = (TextView) findViewById(R.id.tv_show);
webview = (WebView) findViewById(R.id.webview);
image = (ImageView) findViewById(R.id.iv_image);
input = (EditText) findViewById(R.id.et_input);
logo = (CheckBox) findViewById(R.id.cb_logo);
initListener(); //按钮事件监听
}
private void initListener() {
//扫描二维码
btnScan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivityForResult(new Intent(MainActivity.this, CaptureActivity.class), 0);
}
});
//生成二维码
btnMake.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//获取输入的数据
String str = input.getText().toString();
if (TextUtils.isEmpty(str)) {
Toast.makeText(MainActivity.this, "输入内容不能为空", Toast.LENGTH_SHORT).show();
}else{
Bitmap bitmap = EncodingUtils.createQRCode(
str, //输入的内容
500, //二维码宽
500, //二维码 高
logo.isChecked()? //logo图标
BitmapFactory.decodeResource(getResources(),R.mipmap.icon):
null); //这里表示是否添加图标 不显示图片传 null 如果显示则需要bitmao
image.setImageBitmap(bitmap);
}
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
Bundle bundle = data.getExtras();
String result = bundle.getString("result"); //把该文本显示到textview
show.setText(result);
// if (result.startsWith("http")){
// webview.setWebViewClient(new WebViewClient() {
// @Override
// public boolean shouldOverrideUrlLoading(WebView view, String url) {
// view.loadUrl(url); // 根据传入的参数再去加载新的网页
// return true; // 表示当前WebView可以处理打开新网页的请求,不用借助系统浏览器
// }
// });
// webview.loadUrl(result);
// }
}
}
}
二维码之 ZXing
最新推荐文章于 2023-12-13 16:04:18 发布