MartinezCristianD / IMC

segundo proyecto ANDROID con Kotlin
0 stars 0 forks source link

'backgroun2' image is not available #3

Closed davidburgos closed 3 years ago

davidburgos commented 3 years ago

Muy bien! Ahora hay 2 Activities en la app 👏

sólo noto que en el layout que se llama activity_main2.xml que el ConstraintLayout que tiene asignado una imagen de background, pero parece que se le olvidó subirla en el commit que hizo, eso casi siempre pasa la comienzo, cuando uno agrega un archivo nuevo al proyecto, toca decirle a Git que ese archivo también lo tenga en cuenta a la hora de hacer commits, el comando es sencillo:

git add backgroun2.jpg

o un atajo que casi todos hacemos es poner un punto en lugar del nombre del archivo que queremos agregar, y es decirle a Git que agrege todos los archivos que vea que hagan falta por incluir

git add .

Si uno hace un git status antes de hacer el git add, la consola nos deja ver los archivos que no se están incluyendo en los commits (por ser archivos nuevos) creo que hasta los pone de otro color.

La idea sería entonces que haga otro commit y push incluyendo el asset (imagen) que hace falta para que el código funcione. subiendo esa imágen se solucionaria éste issue que creé.


Recomendaciones:

  1. Cuando creamos más de una activity en la app, tratamos de ponerle un nombre acorde con la intención de la activity ésto para evitar llamar todas main_activity.xml con un número para diferenciarlas, eso aplica tanto para la clase de Kotlin MainActivity como para el layout que le corresponde en xml, usualmente se le deja el nombre de MainActivity a la clase que será la principal, o donde el usuario va a usar más la app, en su caso donde se hace el cálculo del IMC estaría bien llamarla MainActivity (como está) pero la otra donde se pide el nombre del usuario ya no tiene mucho sentido que será la principal también, podría llamarse formulario, introducción (onBoarding en inglés) etc... como se quiera llamar
  2. Muy bien por agregar en archivos de recursos todos los valores (colores, números, textos etc...) Sólo veo en el activity_main.xml en las lineas 51 y 52 que aún hay valores asignados directamente en el layout Si necesita que el ancho del texto ocupe el ancho de la pantalla puede utilizar el valor match_parent que tiene la ventaja de que se ajusta al tamaño del celular, tablet, televisor etc... en cambio si deja un valor fijo como 408dp ese va a ser el valor final, si el codigo lo abrimos en un tablet que tiene más espacio, el texto se verá más pequeño porque se le dijo que era 408dp solamente, puede hacer el ensayo abriendo el layout en AS (android studio) y viendo el preview del layout, arriba tiene opciones para simular como se vería en tablets, phones etc... es sino que seleccione cualquier tablet y notará la diferencia.
  3. recordar cambiar cosas como

    app:layout_constraintStart_toStartOf="@+id/weigth"

por

app:layout_constraintStart_toStartOf="@id/weigth"

nótese que falta el signo + en la segunda

  1. Noto que la aplicación está en Espanglish, un buen reto podría ser hacer la app compatible con Español e Inglés es a lo que se le conoce en internet como internacionalización (i18n acrónimo que quiere decir que entre la i y la n hay 18 letras 🤷🏻‍♂️), el mismo AS permite hacerlo o uno lo hace a mano, si algo lo vemos más adelante.
davidburgos commented 3 years ago

Problema de la ímagen faltante solucionado, cerrando el issue.