Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INGENIERÍA EN COMPUTACIÓN
1. Objetivos de la práctica:
2. Descripción general
1 | Page
GUIA DE PASOS para el desarrollo del proyecto
2 | Page
4. Seleccionamos la carpeta res, dentro de ella seleccionamos la carpeta values, y
luego seguimos los pasos de las figuras de abajo. Dimens.xml, nos servirá para guardar las
unidades de medida que usaremos para personalizar la vista o pantalla que crearemos.
5. Dentro del archivo dimens.xml agregue las unidades de medida que se detallan a
continuación, recuerde lo mencionado en clases, dp para alto y ancho y sp para tamaño de
textos. Observe la sintaxis y unidades de medida, abre y cierra tag.
3 | Page
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="alto1">36dp</dimen>
<dimen name="alto2">42dp</dimen>
<dimen name="alto3">64dp</dimen>
<dimen name="margen1">10dp</dimen>
<dimen name="tamtexto1">16sp</dimen>
<dimen name="tamtexto2">24sp</dimen>
</resources>
<resources>
<string name="app_name">MultiplicaNumeros</string>
</resources>
4 | Page
8. Luego de esto Android Studio no debería de marcar error en el código de diseño
y si revisamos el XML, Dimens, la entrada ha sido creada.
9. Editamos el archivo de recursos Strings.xml de tal forma que nos quede de la siguiente manera.
En este caso lo creamos de previo, pero igualmente las etiquetas se pueden ir construyendo en el
camino a medida se diseña. Realice los cambios en su proyecto, agregando o editando las líneas
que considere convenientes de tal forma que le quede tal como se muestra en el bloque de código
de abajo.
5 | Page
<resources>
<string name="app_name">MultiplicaNumeros</string>
<string name="pnumero">Primer Número:</string>
<string name="strMultiplicar">Multiplicar</string>
<string name="snumero">Segundo Número:</string>
<string name="strNumero">"Debe ingresar un número.."</string>
</resources>
6 | Page
Desde el asistente gráfico
11. En caso de optar por el modo diseño muestro capturas de la configuración de cada uno de los
Widgets de la pantalla anterior, la cual se basa en un ConstraintLayout.
7 | Page
Segundo Número / TextView
8 | Page
Multiplicar / Button
Resultado / TextView
9 | Page
Desde código XML
12. Editar el código XML del layout activity_main.xml de tal forma que quede de la siguiente
manera. El código lo pego a nivel de imagen para que lo completen respetando lo marcado en
amarillo. Esto corresponde a la configuración básica un layout, tal como namespaces y dominio.
Lo amarillo no debe ser editado.
10 | Page
<!--Primer Número -->
<TextView
android:id="@+id/tvPrimerNumero"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/alto1"
android:layout_marginEnd="36dp"
android:layout_marginTop="@dimen/alto1"
android:background="@color/design_default_color_primary"
android:text="@string/pnumero"
android:textAlignment="textStart"
android:textColor="@color/white"
android:textSize="@dimen/tamtexto2"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
</TextView>
<EditText
android:id="@+id/editPrimerNumero"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number"
android:maxLength="10"
android:textSize="@dimen/tamtexto2"
android:hint="@string/strNumero"
android:layout_marginTop="@dimen/margen1"
android:layout_marginLeft="@dimen/alto1"
android:layout_marginRight="@dimen/alto1"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvPrimerNumero" />
……
</androidx.constraintlayout.widget.ConstraintLayout>
11 | Page
12 | Page
14. Al ejecutar el proyecto con el diseño definido arriba debe aparecer la siguiente interfaz.
13 | Page
Capa Model
Procedemos agregar la clase model, la cual contendrá la lógica del negocio, para ello
creamos una clase llamada Multiplica dentro del paquete model, el cual debe ser creado
antes. Esto es necesario para separar código y orientar el uso de una arquitectura de
desarrollo, en este caso por ser básica MVC. En este ejercicio:
1. Cree un package denominado model y dentro de esta una clase en Kotlin llamada
Multiplica.
14 | Page
2. Especificamos el nombre del paquete.
3. Ubicado en el paquete creado, crear una nueva clase en Kotlin con el nombre Multiplica
4. Escriba el código de la imagen para la clase, donde se agregará un método que multiplique
ambos números
Edite la clase de tal forma que contenga el método que le permita multiplicar ambos números.
public class multiplica() {
var pnumero:Int=0
var snumero:Int=0
fun multiplica(pnumero:Int, snumero:Int):Int
{ return(pnumero*snumero) }
}
15 | Page
Capa Controladora
5. Para concluir la programación agregamos el código a la clase controladora, en este caso el
MainActivity
Vinculamos las views del layout o pantalla diseñada con nuestra clase controladora, esto se puede
hacer utilizando binding, para efectos de este laboratorio lo haremos de manera explícita con el
findViewById
16 | Page
17 | Page
3. Resumen de la práctica
1. Para crear un proyecto nuevo, inicia Android Studio, haz clic en + Start a
new And …
2. Para crear un dispositivo virtual de Android (un emulador) que ejecute tu app,
elige Tools > AVD Manager y usa el Administrador de AVD para seleccionar
un dispositivo de hardware y una imagen del sistema.
3. Para ejecutar tu app en un dispositivo virtual, asegúrate de haber creado uno,
selecciónalo en el menú desplegable de la barra de herramientas y, luego,
haz clic en el ícono Ejecutar de la barra de herramientas para ejecutar tu
app.
4. Para encontrar los archivos de tu proyecto, selecciona Project Source
Files en el menú desplegable de la ventana Project.
5. Una ImageView es un elemento de la IU para mostrar imágenes en tu app.
6. Las ImageViews deben tener una descripción de contenido que ayude a
mejorar la accesibilidad de tu app.
7. El editor de diseño te ayuda a crear la IU para tu app.
8. Casi todo lo que ves en la pantalla de tu app es una View.
9. Una TextView es un elemento de la IU para mostrar texto en tu app.
10. Un ConstraintLayout es un contenedor de otros elementos de la IU.
11. Las Views deben acoplarse de forma horizontal y vertical dentro de
un ConstraintLayout.
12. Una forma de posicionar una View es mediante el uso de márgenes.
13. Un margen indica hasta qué distancia se encuentra una View de un borde
del contenedor en el que se encuentra.
14. Los atributos de una Views como: TextView, tales como: la fuente, el tamaño
del texto y el color.
Desafío 1
Desarrolle una aplicación sencilla donde aplique los conocimientos adquiridos y
que cumpla con los requerimientos de:
● Debe tener tres parámetros: Medida origen, Medida destino y valor a convertir.
● El convertidor debe funcionar a través de la programación del evento click del
botón Convertir.
● Es requisito que respeten la estructura de proyecto MVC (Modelo, Vista,
Controlador). Es decir, la solución debe incorporar el uso de clases, diseño en
XML con el uso de recursos Strings, Dimens y Drawable
● El lenguaje de programación debe ser KOTLIN
● La app debe tener un icono diferente al por defecto
● El día de la defensa llevar el proyecto solución, el código deberá defenderlo con
el docente. No se entregará reporte escrito, y debe respaldar un video de la
corrida funcional de la app desarrollada.
18 | Page
2. Maquetado del desafío 1
3. Webgrafía
Este ejercicio se realizó en base al estudio de estos dos ítems, con esto se concluye la Unidad
1. Kotlin Basics de este curso de la página oficial de Android Developers
https://developer.android.com/courses/android-basics-kotlin/unit-1?hl=es_419
Constraint Layouts
https://developer.android.com/develop/ui/views/layout/constraint-layout
19 | Page