Cap6 Android JAVA 3parte

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 39

PROGRAMACIÓN

II
PROGRAMACIÓN
MÓVIL

https://www.youtube.c
om/watch?v=sS3oDIc
HNFo
Layout
 Los layouts son elementos no visuales
destinados a controlar la distribución,
posición y dimensiones de los controles
que se insertan en su interior.

MSc. Ing. Cecilia M. Reyes Trigo


FrameLayout
 Éste es el más simple de todos los layouts.
 Coloca todos sus controles hijos alineados
con su esquina superior izquierda, de
forma que cada control quedará oculto por
el control siguiente.
 Por ello, suele utilizarse para mostrar un
único control en su interior,
 Sencillo para un sólo elemento sustituible,
por ejemplo una imagen.MSc. Ing. Cecilia M. Reyes Trigo
FrameLayout
 Propiedades:
android:layout_width
android:layout_height
Posibles valores:
“match_parent” (para que el control hijo
tome la dimensión de su layout contenedor)
“wrap_content” (para que el control hijo
tome la dimensión de su contenido).
MSc. Ing. Cecilia M. Reyes Trigo
FrameLayout

<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<EditText android:id="@+id/TxtNombre"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="text" />

</FrameLayout>

MSc. Ing. Cecilia M. Reyes Trigo


FrameLayout

MSc. Ing. Cecilia M. Reyes Trigo


LinearLayout
 Apila uno tras otro todos sus elementos
hijos en sentido horizontal o vertical.

MSc. Ing. Cecilia M. Reyes Trigo


LinearLayout
 Propiedades:
android:orientation: vertical/horizontal
android:layout_width
android:layout_height
android:layout_weight.

MSc. Ing. Cecilia M. Reyes Trigo


LinearLayout
•<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<EditText android:id="@+id/TxtDato1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="text"
android:layout_weight="1" />

<EditText android:id="@+id/TxtDato2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="text"
android:layout_weight="2" />

</LinearLayout> MSc. Ing. Cecilia M. Reyes Trigo


LinearLayout

MSc. Ing. Cecilia M. Reyes Trigo


TableLayout
 Permite distribuir sus elementos hijos de
forma tabular, definiendo las filas y
columnas necesarias, y la posición de cada
componente dentro de la tabla.
 La estructura de la tabla se define
indicando las filas que compondrán la tabla
(objetos TableRow), y dentro de cada fila
las columnas necesarias que estarán
representadas por los controles que se
vayan insertando.
MSc. Ing. Cecilia M. Reyes Trigo
TableLayout
 Por norma general, el ancho de cada
columna se corresponderá con el ancho del
mayor componente de dicha columna, pero
existen una serie de propiedades que
permiten modificar este comportamiento:
 android:stretchColumns. Indicará las columnas que pueden expandir
para absorver el espacio libre dejado por las demás columnas a la
derecha de la pantalla.
 android:shrinkColumns. Indicará las columnas que se pueden
contraer para dejar espacio al resto de columnas que se puedan salir
por la derecha de la pantalla.
 android:collapseColumns. Indicará las columnas de la tabla que se
quieren ocultar completamente.
MSc. Ing. Cecilia M. Reyes Trigo
TableLayout
 Todas estas propiedades
del TableLayout pueden recibir una lista de
índices de columnas separados por comas:
android:stretchColumns=”1,2,3″
 O un asterisco para indicar que debe
aplicar a todas las columnas
android:stretchColumns=”*”

MSc. Ing. Cecilia M. Reyes Trigo


TableLayout
 Otra característica importante es la
posibilidad de que una celda determinada
pueda ocupar el espacio de varias
columnas de la tabla.
 Esto se indicará mediante la propiedad
android:layout_span
del componente concreto que deberá tomar
dicho espacio.

MSc. Ing. Cecilia M. Reyes Trigo


TableLayout
•<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<TableRow>
<TextView android:text="Celda 1.1" />
<TextView android:text="Celda 1.2" />
<TextView android:text="Celda 1.3" />
</TableRow>

<TableRow>
<TextView android:text="Celda 2.1" />
<TextView android:text="Celda 2.2" />
<TextView android:text="Celda 2.3" />
</TableRow>

<TableRow>
<TextView android:text="Celda 3.1"
android:layout_span="2" />
<TextView android:text="Celda 3.2" />
</TableRow>
</TableLayout> MSc. Ing. Cecilia M. Reyes Trigo
TableLayout

MSc. Ing. Cecilia M. Reyes Trigo


RelativeLayout
 Permite especificar la posición de cada
elemento de forma relativa a su elemento
padre o a cualquier otro elemento incluido
en el propio layout. De esta forma, al
incluir un nuevo elemento X podremos
indicar por ejemplo que debe
colocarse debajo del elemento Y y alineado
a la derecha del layout padre.

MSc. Ing. Cecilia M. Reyes Trigo


RelativeLayout
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<EditText android:id="@+id/TxtNombre"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text" />

<Button android:id="@+id/BtnAceptar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/TxtNombre"
android:layout_alignParentRight="true" />
</RelativeLayout>

MSc. Ing. Cecilia M. Reyes Trigo


RelativeLayout

MSc. Ing. Cecilia M. Reyes Trigo


RelativeLayout
 Posición relativa a otro control:
android:layout_above
android:layout_below
android:layout_toLeftOf
android:layout_toRightOf
android:layout_alignLeft
android:layout_alignRight
android:layout_alignTop
android:layout_alignBottom
android:layout_alignBaseline
MSc. Ing. Cecilia M. Reyes Trigo
RelativeLayout
 Posición relativa al layout padre:
android:layout_alignParentLeft
android:layout_alignParentRight
android:layout_alignParentTop
android:layout_alignParentBottom
android:layout_centerHorizontal
android:layout_centerVertical
android:layout_centerInParent

MSc. Ing. Cecilia M. Reyes Trigo


Propiedades comunes a los
layouts
 Opciones de margen exterior:
android:layout_margin
android:layout_marginBottom
android:layout_marginTop
android:layout_marginLeft
android:layout_marginRight

MSc. Ing. Cecilia M. Reyes Trigo


Propiedades comunes a los
layouts
 Opciones de margen interior:
android:padding
android:paddingBottom
android:paddingTop
android:paddingLeft
android:paddingRight

MSc. Ing. Cecilia M. Reyes Trigo


TextView
 Sirve para mostrar mensajes.
 Atrinutos:
android:id=“@+id/txt1”
android:text=“hola”
andriod:layout_width
andriod:layout_height
Pueden tomar 2 valores:
Wrap_content: toma el tamaño del contenido
match:_parent:ancho del padre
MSc. Ing. Cecilia M. Reyes Trigo
TextView
 Para enlazar el textView con el código:
 1° Definir una variable de tipo textView
TextView tv1;
 2° Enlazar la variable al textView
insertado
tv1=(TextView)findViewById(R.id.txt1);
 Si se quiere cambiar el texto:
Tv1.setText(“Adios”);

MSc. Ing. Cecilia M. Reyes Trigo


TextView

MSc. Ing. Cecilia M. Reyes Trigo


EditView
 Permite la introducción y edición de texto
por parte del usuario.
 Atributos:
– android:id=“valor”
– android:text=“valor”
– android:input_type=“text/number/phone/textU
ri/textEmailAddress/etc” (Establece el tipo de
dato que podrá ingresar el usuario)

MSc. Ing. Cecilia M. Reyes Trigo


EditView
 Atributos:
– android:hint=“texto” (Texto de ayuda que
desaparece cuando el usuario empieza a
escribir)
– android:textColorHint=“color”

MSc. Ing. Cecilia M. Reyes Trigo


EditView
 Para recuperar y establecer el texto desde
nuestro código podemos utilizar
los métodos getText() y setText(nuevoText
o) respectivamente

MSc. Ing. Cecilia M. Reyes Trigo


EditView

MSc. Ing. Cecilia M. Reyes Trigo


Button
 Un control de tipo Button es el botón más
básico que podemos utilizar y
normalmente contiene un simple texto.
 Propiedades:
android:id=“@+id/txt1”
android:text=“hola”
andriod:layout_width
andriod:layout_height

MSc. Ing. Cecilia M. Reyes Trigo


Button
 Además de esta propiedad se pueden
utilizar muchas otras relacionadas con el
formato:
 color de fondo: android:background
 estilo de fuente android:typeface
 color de fuente: android:textcolor
 tamaño de fuente: android:textSize
 etc.

MSc. Ing. Cecilia M. Reyes Trigo


Button

MSc. Ing. Cecilia M. Reyes Trigo


Button
 Para asignar el evento click:
 1° Definir una variable de tipo Button
Button boton;
 2° Enlazar la variable al boton insertado
boton=(Button)findViewById(R.id.btnClic);
 3° Añadir un escucha al evento clic:

MSc. Ing. Cecilia M. Reyes Trigo


Button
boton.setOnClickListener(new
View.OnClickListener() {
public void onClick(View view) {
//aquí va el codigo
}
});

MSc. Ing. Cecilia M. Reyes Trigo


Ejemplo 1

MSc. Ing. Cecilia M. Reyes Trigo


Ejemplo 2

MSc. Ing. Cecilia M. Reyes Trigo


Ejemplo 2

MSc. Ing. Cecilia M. Reyes Trigo

También podría gustarte