Estoy tratando de aprender Android . Tengo algo de experiencia en Java , pero nunca he visto un bloque de código como este:
addNumsButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { EditText firstNumEditText = (EditText) findViewById(R.id.firstNumEditText); EditText secNumEditText = (EditText) findViewById(R.id.secNumEditText); TextView resultTextView = (TextView) findViewById(R.id.resultTextView); resultTextView.setText((Integer.parseInt(firstNumEditText.getText().toString()) + Integer.parseInt(secNumEditText.getText().toString())) + ""); } }); ¿Qué se declara después de View.OnClickListener()? Verifiqué que View.OnClickListener() devuelve el tipo de interfaz.
¿Para qué se usa el código después de ese método?
Esa es una clase anónima . Es una sintaxis especial para crear una instancia de un tipo abstracto proporcionando implementaciones justo en el punto de declaración. Es muy común en el código GUI (Android, Swing, lo que sea) proporcionar devoluciones de llamada de acción GUI.
Lo que está haciendo su fragmento es pasar una instancia ad-hoc de View.OnClickListener a setOnClickListener que ejecuta el código en el bloque de llaves más interno cuando se hace clic en el botón.