-1
我的应用程序项目有qr代码生成器功能。我使用Zxing库来编写qr代码生成器,但它只能生成qr代码单个变量。我想在一个qr代码上用3个变量创建qr代码。请帮我创建这个。 p.s.我是Android的新手。如何在单个QR码上创建具有多个变量的Qr码?
我的代码
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.journeyapps.barcodescanner.BarcodeEncoder;
public class MainActivity extends AppCompatActivity {
private EditText editText , editText2 , editText3;
private String qrText1 , qrText2 , qrText3;
private ImageView qrCodeView;
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = (EditText) this.findViewById(R.id.editText);
editText2 = (EditText) this.findViewById(R.id.editText2);
editText3 = (EditText) this.findViewById(R.id.editText3);
Button generateBtn = (Button) this.findViewById(R.id.generateButton);
qrCodeView = (ImageView) this.findViewById(R.id.imageView);
generateBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
qrText1 = editText.getText().toString().trim();
qrText2 = editText2.getText().toString().trim();
qrText3 = editText3.getText().toString().trim();
MultiFormatWriter multiFormatWriter = new MultiFormatWriter();
try {
BitMatrix bitMatrix = multiFormatWriter.encode(qrText1, BarcodeFormat.QR_CODE, 200, 200);
BarcodeEncoder barcodeEncoder = new BarcodeEncoder();
Bitmap bitmap = barcodeEncoder.createBitmap(bitMatrix);
qrCodeView.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
}
});
}
}
我不知道如何在创建一个单一的QR码添加qrText2和qrText3与qrText1。
AFAIK,从字符串生成的QR码。不管你喜欢什么,你都可以组装那个字符你可能想编辑你的问题并提供一个[mcve],显示你的代码使用“只有一个变量”,然后解释你在尝试使用更多变量时遇到的问题。 – CommonsWare