Pequeños puntos de conocimiento del funcionamiento lambda
languageLv!!.setOnItemClickListener { _, _, i, _ ->
this.position = i
adapter.notifyDataSetChanged()
}
A menudo uso lambda, y lo uso muy suavemente, pero lo escribo con una indicación
Pero la primera vez que lo vi hoy, todavía se puede usar así
El prototipo es así
languageLv!!.setOnItemClickListener { parent, view, position, id ->
this.position = position
adapter.notifyDataSetChanged()
}
La diferencia radica en los parámetros internos,
Los parámetros innecesarios anteriores son todos guiones bajos (_)
Los siguientes son los parámetros predeterminados
En ese momento, el nombre de la variable miembro era el mismo cuando se usaba. Para evitar conflictos, lo cambié a i. Como vieron mis colegas, directamente me pidieron que cambiara otras variables para subrayar (_). De repente Sentí que era un buen artefacto.
Lea la explicación:
Porque la sintaxis de declaración de desestructuración pasa parámetros para expresiones lambda
Si no desea declarar otras variables, puede usar guiones bajos (_) en lugar de variables
protected Dialog onCreateDialog(int id) {
// TODO Auto-generated method stub
switch(id){
case 10:
return new AlertDialog.Builder(Activity13.this)
.setTitle(getString(R.string.title)).setMessage(
getString(R.string.timeout)).setPositiveButton(
getString(R.string.ok),
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
}
}).create();
}
return super.onCreateDialog(id);
}