1

Hola quiero imprimir por un mensaje toast lo que ingreso en un edit text.

    <EditText
    android:id="@+id/idprodtxxt"
    style="@style/Widget.AppCompat.EditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/btn_acceder"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="20dp"
    android:ems="10"
    android:hint="Contraseña"
    android:inputType="textPassword" />

en la clase java lo estoy llamando de la siguiente forma:

EditText clavetxt; 

clavetxt=(EditText) findViewById(R.id.idprodtxxt);


   btnacceder.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View view) {

            if(conf != null) {
                clave = conf.getCLA_S();

                if (clave == clavetxt.getText().toString()) {

                    Intent regis = new Intent(inicio.this, Home.class);///////////////ojoaqui
                    startActivity(regis);
                }
                else{
                    Toast.makeText(inicio.this,"Clave incorrecta"+clave+clavetxt.getText().toString(), Toast.LENGTH_SHORT).show();
                }
            }else{
                Toast.makeText(inicio.this,"Primero configure", Toast.LENGTH_SHORT).show();
            }
        }
    });

Al imprimir me saleel siguiente mensaje

Yoel Mendoza
  • 75
  • 1
  • 1
  • 6
  • puedes indicarnos donde declaras la variable : clave – diegoveloper Dec 04 '17 at 01:38
  • esta declarada junto a as demás, con esa variable no tengo inconvenientes, ella extrae información de SharedPreferences si logras ver 123 fue algo que guarde de manera exitosa, sin embargo al intentar imprimir clavetxt lanza ese error de la imagen. – Yoel Mendoza Dec 04 '17 at 01:42
  • Yoel, la comparación de Strings debe realizarse mediante el método .equals() https://es.stackoverflow.com/questions/225/c%C3%B3mo-comparar-correctamente-strings-y-objetos-en-java/41581#41581 – Jorgesys Dec 04 '17 at 15:38

1 Answers1

1

Bueno la comparación de String que realizas es incorrecta, no puedes comparar cadenas de texto de ese manera en Java, string1 == string2. Necesitas usar el método equals

if (clave.equals(clavetxt.getText().toString()))

Si no te importa las mayúsculas y minúsculas puedes usar:

if (clave.equalsIgnoreCase(clavetxt.getText().toString()))
diegoveloper
  • 6,351
  • 2
  • 7
  • 18