Android Studio: suprimir advertencia de pelusa para la instrucción if

Tengo este código en algún lugar de mi proyecto de Android:

public boolean isLoadInProgress(boolean privateLoad, boolean publicLoad) { if (privateLoad && privateLoadInProgress) { return true; } if (publicLoad && publicLoadInProgress) { return true; } return false; } 

Tengo una advertencia pelusa en la segunda declaración if: 'if' declaración podría ser simplificado. Eso es, obviamente, porque yo también podría escribir:

 return publicLoad && publicLoadInProgress; 

Sin embargo, me gustaría mantenerlo de esta manera para la legibilidad. Sé que hay alguna anotación de comentarios en línea para apagar la advertencia de pelusa en ese lugar, pero no puedo encontrarla en la documentación de Lint de Android . ¿Puede decirme qué fue esta anotación / comentario?

El comentario de código simple para desactivar la advertencia es:

 //noinspection SimplifiableIfStatement 

Esto en la parte superior de la instrucción if debería desactivar la advertencia sólo en ese lugar.

En el ejemplo, esto sería:

 public boolean isLoadInProgress(boolean privateLoad, boolean publicLoad) { if (privateLoad && privateLoadInProgress) { return true; } //noinspection SimplifiableIfStatement if (publicLoad && publicLoadInProgress) { return true; } return false; } 

Puede agregar @SuppressWarnings("SimplifiableIfStatement") encima de su método.

No es un error de Lint de Android. Puedes usar:

 @SuppressWarnings("RedundantIfStatement") public static boolean isLoadInProgress(boolean privateLoad, boolean publicLoad) { if (privateLoad && privateLoadInProgress) { return true; } if (publicLoad && publicLoadInProgress) { return true; } return false; } 

En la opción resaltada, puede usar el acceso directo alt-enter para abrir el menú contextual y seleccionar Simplify > Suppress for method (mantener el ámbito lo más pequeño posible).

Por supuesto:

En archivos .java, puede suprimir problemas con las anotaciones @SuppressLint. Suministra el ID de problema de pelusa como el argumento a las anotaciones.

Ejemplo:

 @SuppressLint("AndroidWarningId") public boolean isLoadInProgress(boolean privateLoad, boolean publicLoad) { if (privateLoad && privateLoadInProgress) { return true; } if (publicLoad && publicLoadInProgress) { return true; } return false; } 

Simplemente reemplace el AndroidWarningId con la advertencia correspondiente, puede encontrar los aquí

Aunque yo sugeriría simplificarlo de esta manera:

 public boolean isLoadInProgress(boolean privateLoad, boolean publicLoad) { if (privateLoad && privateLoadInProgress || publicLoad && publicLoadInProgress) { return true; } return false; } 

Es aún legible y utiliza menos espacio (algo feo, pero mejor que una supresslint).

También puede suprimir más de un problema utilizando una lista separada por comas:

@SuppressLint ({"NewApi", "StringFormatInvalid"})

¡Aclamaciones!

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.