我已经构建了QRCode扫描仪应用程序,我想选择代码值的特定内容。目前我将QRCode的值存储为数组,并将其用作用户的输入。在第二步,我想取一半数组的内容并将它们用作第一个输入,然后取出数组的其余部分并将其用作第二个输入。如您所见,inPut(EditText)使用整个数组作为输入。
即。会有inPut1& INPUT2。 QRcode的值是“user@user.com qwerty12345”。所以inPut1 =“user@user.com”,inPut2 =“qwerty12345”。
请原谅我在这个问题上的任何错误,但我是StackOverflow社区的新用户。任何建议/帮助都将被接受!
我的方法如下:
@Override
public void receiveDetections(Detector.Detections<Barcode> detections) {
final SparseArray<Barcode> qrcodes = detections.getDetectedItems();
if (qrcodes.size() != 0)
{
txtResult.post(new Runnable() {
@Override
public void run() {
//Vibration
Vibrator vibrator = (Vibrator)getApplicationContext().getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(600);
txtResult.setText(qrcodes.valueAt(0).displayValue);
inPut.setText(qrcodes.valueAt(0).displayValue);
}
});
}
}
答案 0 :(得分:1)
你可以这样做:
@Override
public void receiveDetections(Detector.Detections<Barcode> detections) {
final SparseArray<Barcode> qrcodes = detections.getDetectedItems();
if (qrcodes.size() != 0)
{
txtResult.post(new Runnable() {
@Override
public void run() {
//Vibration
Vibrator vibrator = (Vibrator)getApplicationContext().getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(600);
String value=qrcodes.valueAt(0).displayValue;
txtResult.setText(value.split(" ")[0]);
inPut.setText(value.split(" ")[1]);
}
});
}
阅读this了解详情。
希望,它有所帮助!!