Member 14647392 Ответов: 0

Как я могу вставить результат сканирования zxing в мои два edittext


Я разрабатываю простой проект, в котором сканирование QR-кода является альтернативным вариантом входа в систему.

Я пытаюсь использовать Zxing я перепробовал почти все учебники на youtube, но не могу найти свой ответ.

Что я хочу, так это когда я сканирую QR-код, я могу вставить результат на свой editTextUser и editTextPass.

Большое вам спасибо за вашу помощь, я не знаю, где спросить, поэтому я надеюсь, что вы можете помочь, я действительно ценю вашу помощь.

Что я уже пробовал:

package com.logizard.logizard_go.Activities;

import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

import com.logizard.logizard_go.Common.LoginManager;
import com.logizard.logizard_go.R;
import com.logizard.logizard_go.models.ResponseDataForCommon;

public class Login extends AppCompatActivity {//implements ZXingScannerView.ResultHandler
    private TextView labelErrorMessage;
    private EditText editTextUser;
    private EditText editTextPass;
    private Button buttonLogin;
    private ImageButton imageButton2;

    static final int GET_SCANNED = 1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.login);

        labelErrorMessage = findViewById(R.id.labelErrorMessage);
        editTextUser = findViewById(R.id.editTextUser);
        editTextPass = findViewById(R.id.editTextPass);

        buttonLogin = (Button) findViewById(R.id.buttonLogin);
        buttonLogin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String userId = editTextUser.getText().toString().trim();
                String password = editTextPass.getText().toString().trim();

                if (userId.isEmpty()){
                    editTextUser.setError("User_ID is empty.");
                    editTextUser.requestFocus();
                    return;
                }

                if (password.isEmpty()){
                    editTextPass.setError("Password is empty.");
                    editTextPass.requestFocus();
                    return;
                }
                LoginTask task = new LoginTask();
                task.execute(userId, password);
            }
        });
        imageButton2 = (ImageButton) findViewById(R.id.imageButton2);

        imageButton2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Login.this, ScanResult.class);
                startActivity(intent);
            }
        });



    }




    private class LoginTask extends AsyncTask<String, String, String> {
        @Override
        protected String doInBackground(String... strings) {
            // The first, the app try to do login with "PROCESS_FLG"'s value is "1"(the meaning is trying as the user is registered).
            LoginManager.login(strings[0], strings[1], "1", (ResponseDataForCommon data) -> {
                // The scene of this app is moved to the main menu.
                Intent intent = new Intent(Login.this, MainMenu.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
            }, (Integer errorCode) -> {
                labelErrorMessage.setText("Couldn't find your Logizard Zero account.");
                System.out.println(errorCode);
            }, (String message) -> {
                labelErrorMessage.setText(message);
            });
            return null;
        }
    }



}

Richard MacCutchan

Вам нужно объяснить, в чем заключается настоящая проблема.

David Crow

Я не вижу, чтобы вы использовали какие-либо компоненты ZXing.

Что касается вашего "когда я сканирую QR-код, я могу вставить результат на свой компьютер". editTextUser и editTextPass"комментарий, Я вижу, где вы читаете значения из editTextUser и editTextPass элементы управления и передача их в LoginManager.login()- но это все. Разве вы не должны по крайней мере использовать ZXingScannerView возражать?

0 Ответов