package com.bwie.guilin.demoerweima;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.google.zxing.WriterException;
import com.yzq.zxinglibrary.android.CaptureActivity;
import com.yzq.zxinglibrary.android.PermissionUtils;
import com.yzq.zxinglibrary.bean.ZxingConfig;
import com.yzq.zxinglibrary.common.Constant;
import com.yzq.zxinglibrary.encode.CodeCreator;
public class MainActivity extends AppCompatActivity {
private final int RESULT_CODE = 1000;
private TextView textView;
private ImageView getpic;
private EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.tv_mess);
getpic = findViewById(R.id.getpic);
editText = findViewById(R.id.edit);
findViewById(R.id.scan_btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
sCan();
}
});
findViewById(R.id.captrue_btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setCap();
}
});
}
//生成
private void setCap() {
String message = editText.getText().toString().trim();
if (TextUtils.isEmpty(message)) {
Toast.makeText(this, "请输入一点东西", Toast.LENGTH_SHORT).show();
}
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher_round);
try {
Bitmap qrCode = CodeCreator.createQRCode(message, 200, 200, bitmap);
getpic.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
}
//跳转扫一扫
private void sCan() {
PermissionUtils.permission(this, new PermissionUtils.PermissionListener() {
@Override
public void success() {
Intent intent = new Intent(MainActivity.this, CaptureActivity.class);
//获取配置文件对象
ZxingConfig config = new ZxingConfig();
intent.putExtra(Constant.INTENT_ZXING_CONFIG, config);
startActivityForResult(intent, RESULT_CODE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_CODE && resultCode == RESULT_OK) {
String text = data.getStringExtra(Constant.CODED_CONTENT);
if (text.contains("http")) {
Intent intent = new Intent(MainActivity.this, WebActivity.class);
intent.putExtra("url", text);
startActivity(intent);
finish();
}
textView.setText(text);
}
}
}