TransWikia.com

Passar um texto para um EditText

Stack Overflow em Português Asked by J.Young on December 2, 2021

Estou fazendo um aplicativo para android que lê um código de barras. Eu vi um vídeo no youtube que ensinava como fazer e repliquei para ter como base e funcionou de boas. O problema foi quando eu tentei colocar o retorno da leitura em um EditText. No vídeo, o resultado aparece com Toast. Por mais que eu tente não aparece nada no EditText.

Segue o código Java:

package none.teste;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;

import android.widget.EditText;

import android.widget.Toast;

import com.google.zxing.Result;

import me.dm7.barcodescanner.zxing.ZXingScannerView;

import static none.teste.R.layout.activity_menu;

public class Menu extends AppCompatActivity implements ZXingScannerView.ResultHandler{

private ZXingScannerView leitorView;

    EditText editCodigo;

    Leitor l=new Leitor();


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(activity_menu);


        editCodigo = (EditText) findViewById(R.id.editCodigo);
        Toast.makeText(Menu.this,"onCreate",Toast.LENGTH_LONG).show();



    }
    public void LEITURA(View view) {

        leitorView = new ZXingScannerView(this);
        setContentView(leitorView);
        leitorView.setResultHandler(this);
        leitorView.startCamera();
        Toast.makeText(Menu.this,"LEITURA",Toast.LENGTH_LONG).show();


    }

    @Override
    protected void onPause() {
        super.onPause();
        leitorView.stopCamera();
        Toast.makeText(Menu.this,"onPause",Toast.LENGTH_LONG).show();
    }




    @Override
    public void handleResult(Result result) {

        leitorView.stopCamera();
        setContentView(R.layout.activity_menu);
        l.setLido(result.getText().toString());
        editCodigo.setText(l.getLido());
        Toast.makeText(Menu.this,"handleResult",Toast.LENGTH_LONG).show();
        leitorView.resumeCameraPreview(this);
    }

    @Override
    protected void onResume() {
        super.onResume();
        Toast.makeText(Menu.this,"onResume",Toast.LENGTH_LONG).show();
    }

}

Esses Toasts coloquei para saber por onde o aplicativo tava passando e a classe Leitor é besteira, só tem um atributo String com getter and setter, não precisa disso.
Enfim, queria passar o resultado para o EditText.

One Answer

editCodigo.setText("seu código de barras").

Isso permite que seu campo que já foi declarado na classe receba o valor que foi lido.

Answered by Leonardo Paim on December 2, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP