SlideShare una empresa de Scribd logo
1 de 68
Plantel: CECYTEM TECAMAC
Tema: Manual de android “ADT”
Nombre del alumno: Isabel García Hernández
Nombre del profesor: René Domínguez escalona
Grupo: 402
Carrera: Programación
Turno: matutino
Índice:
 Hola Mundo
 IMC
 Factorial
 Álbum
 Rebosodroid
 Listview
 Sonido aniales
 Video view
 Notificaciones
 Togglebutton
 Checkbox
 Radiobutton
 Progressbar
 Spinner
 Webview
 Timepicker
 Tabhost
 Acelerómetro
 Canvas
NTRODUCCION
En este manual podremos observar la estructura de algunas aplicaciones.
Tambie se observara para que sirve cada condición que se utilizan en las
aplicaciones que se utilizan dia con dia en cada celular de este planeta
“Hola mundo”
Al abrir eclipse y crear una clase nueva automáticamente te abrirá dos pestañas una con el
nobre que le ayas asignado mas la extensión “.XML” el cual es como el cuerpo de la
aplicación en esta parte del programa podemos asignarle el tipo de color de fondo, en si
es todo el diseño de la aplicación.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
El codigo anterior lo da automaticamente el sistema de eclipse es el tamaño de la
pantalla y de cómo se irán ordenando todos los objetos que se vayan utilizando.
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
El codigo anterior es de un text view el cual sirve para mostrar textos que el
programador coloque en este caso emos puesto “hello word” pero ustedes pueden
utilizar cualquier texto de su agrado y tambien el tamaño y el color de letra
deseado.
</LinearLayout>
Bueno el texto anterior de linear layout es solo para cerrar las condiciones
estructuradas anterior mente este tambien es colocado al principio de todo el texto
como pudiste aber observadoppuesto que se abre al inicio y se cierra hasta el final
de todas los objetos utilizados.
Y asi es como se visualizara en un celular
Esta solo es una aplicación que te mostrara un texto en especifico con el color de
fondo deseado y no tiene ninguna otra tarea mas que esa.
“IMC”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical" >
*Aqui se colocara un editex para que el usuario pueda ingreasar
cualquier numero el cual nos indicara que esa es su estatura.
<EditText
android:id="@+id/num"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_margin="10dp"
android:background="#000000"
android:textColor="#FFFFFF"
android:hint="altura"
android:numeric="decimal"/>
*En el Segundo nos indicara su estatura del usuario el cual al
igual que el otro podra ingresar el numero que el usuario
requiera.
<EditText
android:id="@+id/numd"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_margin="10dp"
android:background="#000000"
android:textColor="#FFFFFF"
android:hint="peso"
android:numeric="decimal"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
*Aqui el boton nos servira para que al momento de presionarlo nos calule el índice
de masa corporal con los datos ya introducidos anteriormente
<Button
android:id="@+id/cal"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_weight="1"
android:layout_margin="10dp"
android:background="#3366FF"
android:text="calcular"
android:textColor="#000000"/>
*El Segundo nos servirá para que al momento de presionarlo nos borre los datos
ya introducidos anteriormente y asi los podamos volver a introducir
<Button
android:id="@+id/bor"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_weight="1"
android:layout_margin="10dp"
android:background="#3366FF"
android:text="Borrar"
android:textColor="#000000"/>
</LinearLayout>
*El text view nos servirá para que nos muestre el resultado después de ya haber
introducido los datos que se nos pide
<TextView
android:id="@+id/res"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:background="#000000"
android:textColor="#FFFFFF">
</TextView>
</LinearLayout>
Acontinuacion te mostrare el codigo .java para que las condiciones se puedan
cumplir correctamentamente.
package com.abuelo.imc;
import com.abuelo.imc.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class IMC extends Activity implements OnClickListener {
*Aqui solo estamos declarando las variables para que estas puedan ser
utilizadas correvtamente.
EditText txtaltura,txtpeso;
TextView txtResultado;
Button btnCalcular,btnBorrar;
@Override
protected void onCreate(Bundle savedInstanceState) {
*Aqui se esta especificando las variables a que le pertenecen de los objetos
empleados ya anteriormente en el codigo .xml.
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_imc);
txtpeso=(EditText)findViewById(R.id.num);
txtaltura=(EditText)findViewById(R.id.numd);
txtResultado=(TextView)findViewById(R.id.res);
btnCalcular=(Button)findViewById(R.id.cal);
btnBorrar=(Button)findViewById(R.id.bor);
btnCalcular.setOnClickListener(this);
btnBorrar.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
*Como podras notar aqui se empleara un switch el cual nos ayudara para
identificar si el usuario ya ingreso los datos de lo contario saldra un mensage que
nos especifique que no hay ningun dato.
switch(v.getId()){
case R.id.cal:
String u=txtpeso.getText().toString();
String d=txtaltura.getText().toString();
*Tambien emplearemos un if para que este nos ayude a calcular el IMC (índice de
masa corporal) y ai nos muestre el resultado final de esta
if((u.equals("")|| d.equals("")) || (u.equals("")&& d.equals("")) ){
Toast.makeText(this,"Falta Valores", Toast.LENGTH_SHORT).show();
}else{
double uno=Double.parseDouble(txtpeso.getText().toString());
double dos=Double.parseDouble(txtaltura.getText().toString());
double die=uno*uno;
double IMC=dos/die;
txtResultado.setText("TU IMC ES : "+IMC+"n");
Toast.makeText(this,"Valores calculados", Toast.LENGTH_SHORT).show();
}
break;
case R.id.bor:
txtpeso.setText("");
txtaltura.setText("");
txtResultado.setText("");
}
}
}
Y asi será como se visualizara al momento de que se instale en el celular.
Ya es tu decisión el diseño que requiera utilizar y en esta aplicación solo se
calcula tu IMC que se calcula multiplicando tu peso por la altura .
“Factorial”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical" >
<EditText
android:id="@+id/num"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_margin="10dp"
android:background="#FFFFFF"
android:hint="numero1"
android:numeric="decimal" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/cal"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="#0CCC00"
android:text="calcular"
android:textColor="#000000" />
<Button
android:id="@+id/bor"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="#CCCC00"
android:text="Borrar"
android:textColor="#000000" />
</LinearLayout>
<TextView
android:id="@+id/res"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:background="#FFFFFF" />
</LinearLayout>
package com.example.factorial;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener{
EditText n;
TextView r;
Button fac, borr;
Toast t;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
n=(EditText)findViewById(R.id.num);
r=(TextView)findViewById(R.id.res);
fac=(Button)findViewById(R.id.cal);
borr=(Button)findViewById(R.id.bor);
fac.setOnClickListener(this);
borr.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String a=n.getText().toString();
int e=0;
switch(v.getId()){
case R.id.cal:
if(a.equals("")){
t = Toast.makeText(this, "Inserta un valor chavo" ,
Toast.LENGTH_SHORT);
t.show();
}
else{
int b=Integer.parseInt(a);
if(b==1){
r.setText("La factorial es = 1");
}
if(b==2){
r.setText("La factorial es = 2");
}
if(b>2){
int c=2;
int d=3;
int o=0;
for(e=0; e<b; e++){
o=c*d;
if(d==b){
r.setText("La factorial es = "+o);
}
else{
d=d+1;
c=o;
}
}
}
}
break;
case R.id.bor:
n.setText("");
r.setText("");
break;
}
}
}
Este se declara igual que el anterior pues es casi lo mimo solo que la diferenci es que a
este se le debe declarar un objeto string para que guarde el numero y luego con el
switch lo multiplique dependiendo de el numero que se vaya ingresando como por
ejemplo si se coloca el numero 2 seria=1*2=2 .
“Album”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#000000">
Aqui se declararan todas las imagenes que se vayan a utilizar en
nuestra aplicacion
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="200sp"
android:src="@drawable/a"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="100sp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/image1"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/a"/>
<ImageView
android:id="@+id/image3"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/c" />
<ImageView
android:id="@+id/image2"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/b"/>
<ImageView
android:id="@+id/image4"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/d"/>
<ImageView
android:id="@+id/image5"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/e"/>
<ImageView
android:id="@+id/image6"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/f"/>
<ImageView
android:id="@+id/image7"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/g"/>
<ImageView
android:id="@+id/image8"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/h"/>
<ImageView
android:id="@+id/image9"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/i"/>
<ImageView
android:id="@+id/image10"
android:layout_width="100sp"
android:layout_height="100sp"
android:src="@drawable/j"/>
</LinearLayout>
</HorizontalScrollView>
Y tambien un boton para que nos de la opcion de cambiar el
wallpaper
<Button
android:id="@+id/cambiar"
android:layout_width="match_parent"
android:layout_height="80sp"
android:textColor="#FFFA33FF"
android:text="Cambiar Wallpaper"/>
</LinearLayout>
A continuacion te mostrare el codigo java
package pelon.wallpaperp;
import android.os.Bundle;
import android.app.Activity;
import android.app.WallpaperManager;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
public class Wallpaperp extends Activity implements OnClickListener {
*Aqui les estamos asignando una variable a las imagenes que utilizaremos.
ImageView image, image1, image2, image3, image4, image5, image6,
image7,
image8, image9, image10;
Button btn;
int fondo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
*Aqui le estamos declarando que imagen es cual a la variable.
setContentView(R.layout.activity_wallpaperp);
image=(ImageView)findViewById(R.id.image);
image1=(ImageView)findViewById(R.id.image1);
image2=(ImageView)findViewById(R.id.image2);
image3=(ImageView)findViewById(R.id.image3);
image4=(ImageView)findViewById(R.id.image4);
image5=(ImageView)findViewById(R.id.image5);
image6=(ImageView)findViewById(R.id.image6);
image7=(ImageView)findViewById(R.id.image7);
image8=(ImageView)findViewById(R.id.image8);
image9=(ImageView)findViewById(R.id.image9);
image10=(ImageView)findViewById(R.id.image10);
btn=(Button)findViewById(R.id.cambiar);
image.setOnClickListener(this);
image1.setOnClickListener(this);
image2.setOnClickListener(this);
image3.setOnClickListener(this);
image4.setOnClickListener(this);
image5.setOnClickListener(this);
image6.setOnClickListener(this);
image7.setOnClickListener(this);
image8.setOnClickListener(this);
image9.setOnClickListener(this);
image10.setOnClickListener(this);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
*En este caso utilizaremos un switch para que nos de las varias opciones de
imagenes que tenemos en nuestro álbum y también para que nos de la opción de
cambiar el fondo
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.image1:
image.setImageResource(R.drawable.a);
fondo=R.drawable.a;
break;
case R.id.image2:
image.setImageResource(R.drawable.b);
fondo=R.drawable.b;
break;
case R.id.image3:
image.setImageResource(R.drawable.c);
fondo=R.drawable.c;
break;
case R.id.image4:
image.setImageResource(R.drawable.d);
fondo=R.drawable.d;
break;
case R.id.image5:
image.setImageResource(R.drawable.e);
fondo=R.drawable.e;
break;
case R.id.image6:
image.setImageResource(R.drawable.f);
fondo=R.drawable.f;
break;
case R.id.image7:
image.setImageResource(R.drawable.g);
fondo=R.drawable.g;
break;
case R.id.image8:
image.setImageResource(R.drawable.h);
fondo=R.drawable.h;
break;
case R.id.image9:
image.setImageResource(R.drawable.i);
fondo=R.drawable.i;
break;
case R.id.image10:
image.setImageResource(R.drawable.j);
fondo=R.drawable.j;
break;
case R.id.cambiar:
WallpaperManager
mywp=WallpaperManager.getInstance(getApplicationContext());
try {
mywp.setResource(fondo);
}catch(Exception e){
e.printStackTrace();
}
Toast.makeText(this,"Cambiar
Wallpaper",Toast.LENGTH_LONG).show();
break;
}
}
}
Y también tendras que realizar una carpeta dentro de la carpeta res para que en
ella puedas coopear todas las imágenes que quieras introducir y le tendras que
dar refresh para que estas se guarden en la carpeta mdpi y también les tendras
que dar nombres cortos a tus imágenes.
Asi se visualizara en un celular ya instalada correctamente se visualizan las
imágenes que se eligieron y también el botón de opción de cambiar wallpaper
“ListView”
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/a"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
Aqui se puede visualizar una caja de texto donde el usuario podra ingresar
cualquier tipo de texto
<EditText
android:id="@+id/elemento"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_weight="0.3"
android:background="#FFFFFF"
android:contentDescription="agregarDescElemento"
android:hint="AgregarElemento"
android:marqueeRepeatLimit="marquee_forever"
android:textColor="#000000"
android:textSize="26sp"
android:textStyle="bold" />
Aqui el boton nos servira para que el usuario pueda ingresar el
texto que ya a escrito
<Button
android:id="@+id/agregar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#00FFFF"
android:hint="agregar" />
</LinearLayout>
Y aquí nuestro text view nos mostrara todos los textos que se lleguen a
escribir
<ListView
android:id="@+id/lista"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>
A continuación te mostraremos el código java
package com.example.list;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
public class MainActivity extends Activity implements OnClickListener {
EditText elemento;
ArrayList<String> elementos;
Button btn;
ListView lista;
ArrayAdapter<String> adaptador;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Estamos declarando las variables que se utilizaran y la fuuncion que tendran
setContentView(R.layout.activity_main);
lista=(ListView)findViewById(R.id.lista);
elemento=(EditText)findViewById(R.id.elemento);
btn=(Button)findViewById(R.id.agregar);
elementos= new ArrayList<String>();
adaptador =new ArrayAdapter(this,
android.R.layout.simple_list_item_1,elementos);
lista.setAdapter(adaptador);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
En este caso ahora utilizaremos un if para que este valla guardando los textos que
se vallan escribiendo hy asi se visualizen nuestra pantalla.
if(v.getId()==R.id.agregar){
elementos.add(elemento.getText().toString());
elemento.setText("");
adaptador.notifyDataSetChanged();
}
}
Y asi es como se ve la aplicación al final instalada en un celular correctamente
“RebosoDroid”
En esta aplicación utilizaremos dos conexiones para realizarla.
Esta es la primera estructura de .xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
En esta parte solo hemos colocado dos editext para que el usuario pueda ingresar
los datos que se solicitan
<EditText
android:id="@+id/nombre"
android:layout_width="match_parent"
android:layout_height="60sp"
android:layout_margin="10sp"
android:background="#cc00ff"
android:hint="nombre"
android:maxLength="20"
android:textSize="50sp"/>
<EditText
android:id="@+id/edad"
android:layout_width="match_parent"
android:layout_height="60sp"
android:layout_margin="10sp"
android:background="#cc00ff"
android:hint="edad"
android:maxLength="20"
android:textSize="50sp"/>
Tambien hemos colocado dos botones que nos servirán para enviar
los datos ya escritos a otra pagina y otro para borrar los datos
<Button
android:id="@+id/enviar"
android:layout_width="match_parent"
android:layout_height="60sp"
android:layout_margin="10sp"
android:background="#cc00ff"
android:hint="Enviar"
android:maxLength="20"
android:textSize="50sp"/>
<Button
android:id="@+id/borrar"
android:layout_width="match_parent"
android:layout_height="60sp"
android:layout_margin="10sp"
android:background="#cc00ff"
android:hint="Borrar"
android:maxLength="20"
android:textSize="50sp"/>
</LinearLayout>
Y su .java es el siguiente
package com.Sparda.rebosodroid;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
EditText nombre,edad;
Button enviar,borrar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Aqui se estan declarando todas las variables de los obgetos que se utilizaron en el
.xml
setContentView(R.layout.activity_main);
nombre=(EditText)findViewById(R.id.nombre);
edad=(EditText)findViewById(R.id.edad);
enviar=(Button)findViewById(R.id.enviar);
borrar=(Button)findViewById(R.id.borrar);
enviar.setOnClickListener(this);
borrar.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Y en este utilizaremos if para que esta condicion nos sirva para guardar o borrar
los datos que se introduscan y nos mande a la siguiente pagina
if(v.getId()==R.id.enviar){
String n=nombre.getText().toString();
String e=edad.getText().toString();
if ((!n.equals("" ) || !e.equals("")) || (!n.equals("" ) && !e.equals(""))){
Intent enviardatos=new Intent(this, Recibe.class);
enviardatos.putExtra("nombre", n);
enviardatos.putExtra("edad", e);
startActivity(enviardatos);
}else{
Toast.makeText(this, "faltan valores", Toast.LENGTH_SHORT).show();
} if(v.getId()==R.id.borrar){
nombre.setText("");
edad.setText("");
}
}
}
}
El segundo código .xml es el siguiente el cual corresponde a la pagina donde nos
mostrara un mensaje
En este solo se coloca un text view puesto que solo lo que ara será mostrar un
mensaje
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/resultado"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10sp"
android:background="#ffffff"
android:textSize="10sp"/>
</LinearLayout>
Y su estructura .java es la siguiente
package com.Sparda.rebosodroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class Recibe extends Activity{
Aqui solo se esta declarando los objetos que se utilizaron en el .xml
TextView Resultado;
String nombre="";
int edad=0;
protected void onCreate(Bundle savedInstanceState){
Y se esta difiniendo lo que contendra cada objeto ya definido anteriormente y le
esta dando permiso a la pagina principal de recibir los datos que ingresen
super.onCreate(savedInstanceState);
setContentView(R.layout.recibe);
Resultado=(TextView)findViewById(R.id.resultado);
Bundle recibedatos=getIntent().getExtras();
nombre=recibedatos.getString("nombre");
edad=Integer.parseInt(recibedatos.getString("edad"));
Resultado.setText("Hola!!!!"+nombre+"n"+"Tu edad es:"+edad);
}
}
Yasi es como se visualizan las dos pantallas al final que se instalan correctamente
en el celeular
“Sonido de animales”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/android"
tools:context=".Animales" >
En esta estructura solo se colocaran button en los cuales se le colocaran una
imagen determinada para que se identifique de que se trata en lugar de poner solo
textos
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="0.85"
android:orientation="horizontal" >
<Button
android:id="@+id/a1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/caballo"
/>
<Button
android:id="@+id/a2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/cuervo"
/>
<Button
android:id="@+id/a3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/elefante"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="0.85"
android:orientation="horizontal" >
<Button
android:id="@+id/a4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/lechuza"
/>
<Button
android:id="@+id/a5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/leon"
/>
<Button
android:id="@+id/a6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/lobo"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="0.85"
android:orientation="horizontal" >
<Button
android:id="@+id/a7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/mosquito"
/>
<Button
android:id="@+id/a8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/perro"
/>
<Button
android:id="@+id/a9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/vaca"
/>
</LinearLayout>
</LinearLayout
A continuación te mostraremos la estructura .java
package com.abuelo.animales;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class Animales extends Activity implements OnClickListener{
SoundPool sp;
Aqui se estan definiendo los valores que ya se le avian asignado en el .xml alos
botones
Button a1,a2,a3,a4,a5,a6,a7,a8,a9;
int b1,b2,b3,b4,b5,b6,b7,b8,b9;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_animales);
Yaqui se puede ver que se le estan definiendo los sonidos a cada boton en
especifico
a1=(Button)findViewById(R.id.a1);
a2=(Button)findViewById(R.id.a2);
a3=(Button)findViewById(R.id.a3);
a4=(Button)findViewById(R.id.a4);
a5=(Button)findViewById(R.id.a5);
a6=(Button)findViewById(R.id.a6);
a7=(Button)findViewById(R.id.a7);
a8=(Button)findViewById(R.id.a8);
a9=(Button)findViewById(R.id.a9);
a1.setOnClickListener(this);
a2.setOnClickListener(this);
a3.setOnClickListener(this);
a4.setOnClickListener(this);
a5.setOnClickListener(this);
a6.setOnClickListener(this);
a7.setOnClickListener(this);
a8.setOnClickListener(this);
a9.setOnClickListener(this);
sp= new SoundPool(8, AudioManager.STREAM_MUSIC,0);
b1=sp.load(this,R.raw.caba, 1);
b2=sp.load(this,R.raw.cue, 1);
b3=sp.load(this,R.raw.ele, 1);
b4=sp.load(this,R.raw.lechu, 1);
b5=sp.load(this,R.raw.lion, 1);
b6=sp.load(this,R.raw.lob, 1);
b7=sp.load(this,R.raw.mosca, 1);
b8=sp.load(this,R.raw.pero, 1);
b9=sp.load(this,R.raw.vaco, 1);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.animales, menu);
return true;
}
@Override
En este caso se utilizara un switch para que nos de varias opciones de elegir
cualquier boton que se encuentra en la pantalla y asi se pueda escuchar el sonido
que se le ha predeterminado
public void onClick(View v) {
switch(v.getId()){
case R.id.a1:
sp.play(b1, 1,1, 1, 0,1);
break;
case R.id.a2:
sp.play(b2, 1,1, 1, 0,1);
break;
case R.id.a3:
sp.play(b3, 1,1, 1, 0,1);
break;
case R.id.a4:
sp.play(b4, 1,1, 1, 0,1);
break;
case R.id.a5:
sp.play(b5, 1,1, 1, 0,1);
break;
case R.id.a6:
sp.play(b6, 1,1, 1, 0,1);
break;
case R.id.a7:
sp.play(b7, 1,1, 1, 0,1);
break;
case R.id.a8:
sp.play(b8, 1,1, 1, 0,1);
break;
case R.id.a9:
sp.play(b9, 1,1, 1, 0,1);
break;
}
}
}
Y asi es como ya se puede visualizar nuestra aplicación ya
intalada en un celular
“Web view”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical" >
Se declarara un botan para que este pueda tomar la foto que se desee y se logre
visualizar
<Button
android:id="@+id/botonCapturar"
android:layout_width="91dp"
android:layout_height="54dp"
android:background="#0066gg"
android:text="Capturar"
android:textColor="#FFFFFF" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical" >
Tambien se declarara un image view par que en este se logre visualizar la
fotografia ya capturada
<ImageView
android:id="@+id/imageViewFoto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/botonCapturar"
android:layout_margin="35sp" >
</ImageView>
</LinearLayout>
</LinearLayout>
A continuación te mostraremos el código .java
package app.ejempl.video;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity extends Activity {
ImageView imagen;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Aqui se puede observer que se estan declarando las variables con las funciones
que impartiran
imagen = (ImageView) findViewById(R.id.imageViewFoto);
Button boton = (Button) findViewById(R.id.botonCapturar);
boton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 0);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
Y aqui se puede observer que se ele esta dando permiso para que se logre tomar
la fotografia y se visualice en el image view
super.onActivityResult(requestCode, resultCode, data);
Bitmap bitmap = (Bitmap) data.getExtras().get("data");
imagen.setImageBitmap(bitmap);
}
}
Y asi es como se observara la fotografía deseada no se distingue mucho el marco
por que el color de mi fondo es blanco al igual que el color de este.
“Notificacion”
En esta aplicación igual se utilizaran dos pantallas asi que aquí te mostramos la
primera en .xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".Noti" >
En esta solo se esta declarando un boton el cual nos servira para declararlo como
si ya se ubiera descargado algo
<Button
android:id="@+id/boton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Iniciar"
android:background="#FF00C5"/>
</RelativeLayout>
Y este es su .java
package com.aronmith.notificacion;
import android.os.Bundle;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class Pantallauno extends Activity {
Aqui se estan declarando las variables que se utilizaran
NotificationManager nm;
private static final int ID_NOTIFICACION_PERSONAL= 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Aqui se le estara dando permisos necesarios para que este se pueda realizar
setContentView(R.layout.activity_pantallauno);
Button boton = (Button)findViewById(R.id.boton);
nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
boton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Notification notification = new
Notification(R.drawable.ic_launcher,"QUE ONDA XD", System.currentTimeMillis());
PendingIntent intencionpendiente=
PendingIntent.getActivity(getApplicationContext(),0,new
Intent(getApplicationContext(),Pantallados.class),0);
notification.setLatestEventInfo(getApplicationContext(),
"Notificacion", "Notificacion personal de Android", intencionpendiente);
nm.notify(ID_NOTIFICACION_PERSONAL, notification);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.pantallauno, menu);
return true;
}
public void onDestroy(){
super.onDestroy();
nm.cancel(ID_NOTIFICACION_PERSONAL);
}
}
Esta es la segunda panatalla en la cual se observara el mensaje ya identificado es
el código .xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".pantallados" >
Aqui solo se utilizara un text view el cual nos servira para que salga el mensage ya
especificado anteriormente
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hola que hace?" />
</RelativeLayout>
Y este es su java
package com.aronmith.notificacion;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class Pantallados extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
En este se esta declarando a que pantalla le dictara cuando tenga que salir el
mensage
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pantallados);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
Y aqui se ele esta dando permiso para que la principal le dege mencionar cuando
se tendra que mostrar el mensage
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.pantallados, menu);
return true;
}
}
ncncnf ccm
Asi es como se visualizaran las dos paginas una ves instaladas
correctamente
“Togglebutton”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".Togglebutton"
>
En este se va a visualizar el fondo de un color o una imagen en
especifico
<LinearLayout
android:id="@+id/fondo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
Aqui el toggle button para que aga un efecto rapido de cambio de imagenes
<ToggleButton
android:id="@+id/toggleButton1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10sp"
android:textOn="encendido"
android:textOff="apagado"
/>
Esta es nuestra imagen la cual tendra que cambiar repentinamente
al ejecutarlo en cierta forma es nuestro efecto
<!-- <ImageView
android:id="@+id/img1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10sp"
android:src="@drawable/coche"
android:background="@drawable/coche"
/> -->
</LinearLayout>
</LinearLayout>
Este es su java
package com.abuelo.togglebutton;
import android.os.Bundle;
import android.media.*;
import android.app.Activity;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.LinearLayout;
import android.widget.ToggleButton;
public class Togglebutton extends Activity implements OnCheckedChangeListener {
SoundPool sp;
int audio;
ToggleButton alarma;
LinearLayout con;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_togglebutton);
Aqui se estan declarando los obgetos que ya se an declarado en el
.xml con su variable y lo que tendrán que realizar
con = (LinearLayout) findViewById(R.id.fondo);
alarma= (ToggleButton) findViewById(R.id.toggleButton1);
alarma.setOnCheckedChangeListener(this);
sp= new SoundPool(8, AudioManager.STREAM_MUSIC,0);
audio=sp.load(this,R.raw.coche, 1);
}
@Override
public void onCheckedChanged(CompoundButton CompoundButton, boolean b) {
Y en esta parte se esta declarando el if para que se realice si
elige prender o encender la aplicacion o apagarla para eso nos dan
el else
if (b) {
con.setBackgroundResource(R.drawable.cochedos);
sp.play(audio, 1, 1, 1, 0, 1);
}
else{
con.setBackgroundResource(R.drawable.coche);
}
}
}
Y esgta es la manera en la que se visualiza una ves ya instalada y
ejecutada
“CheckBox”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
*Aquí se puede visualizar que se esta declarando un check nox que es casi igual
que un raio button por que es para colocar multiples opciones que se requieran
colcar.Puesto que solo aquí se declaran los que se deseen y se les da la
variable y el texto que se quiera visualizar en estas opciones.
<CheckBox
android:id="@+id/ch1"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="Android"
/>
<CheckBox
android:id="@+id/ch2"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="Android"
/>
<CheckBox
android:id="@+id/ch3"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="Windows"
/>
</LinearLayout>
*Aquí se visualizara qel codigo de .java donde se colocara el codigo necesario para que
nuestar aplicación funcione correctamente.
package com.example.checkboxdemo;
Aquí estan las clases que se necesiatan para utilizar corretamente los objetos empleados
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.CheckBox;
import android.widget.Toast;
public class MainActivity extends Activity {
*Aquí se estan declarando las variables que ya se le abian asignado a los check box
anteriormente en el codigo .xml
CheckBox ch_Android,ch_Iphone,ch_Windows;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
*Aquí se esta declarando lo que le pertenece a cada check box con su variable asignada ya
anteriormente.
setContentView(R.layout.activity_main);
ch_Android=(CheckBox) findViewById(R.id.ch1);
ch_Iphone=(CheckBox) findViewById(R.id.ch2);
ch_Windows=(CheckBox) findViewById(R.id.ch3);
OnClickListener l=new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
*Aquí se esta declarando un if para que la aplicación pueda visualizar que opcion esta
eligiendo en si para que al momento que se elija y se quiera cambiar la opcion no se
quede esta y asi se pueda reelegir y para que esto ocurra tambien se colocara else if, else
que se ria como un case pero en este se colocara como para reelegir y no se quede la
primera opcion y al mismo salga un mensage oculto que te diga la opcion que as elegido.
if(ch_Android.isChecked())
{
Toast.makeText(MainActivity.this, "Android",
Toast.LENGTH_SHORT).show();
}
else if (ch_Iphone.isChecked()){
Toast.makeText(MainActivity.this,"Iphone",
Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(MainActivity.this, "WindoWs",
Toast.LENGTH_SHORT).show();
}
}
};
ch_Android.setOnClickListener(l);
ch_Iphone.setOnClickListener(l);
ch_Windows.setOnClickListener(l);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Asi es como se visualizara en un celular al ya instalar la aplicación propiamente.
“Radio Button”
Como anterior mente se explico este codigo es para dec larar como se iran
posicionando los objetos que se vallan colocando que en este caso seran
textview, buttons y radio button.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_horizontal_margin"
tools:context=".MainActivity" >
El codigo siquiente es de un text view el cual le estamos colocando una pregunta
que es “de que pais eres” con esto estamos declarando que en nuestar pantalla se
cisualizara esta preunta para que usuario la pueda visualizar
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="de que pais eres"
android:textAppearance="?android:attr/textAppearanceLarge" />
A partir de aquí podras visualizar tres radio button los cuales tendran asta el
final en un “android:text=” esto quiere decir que se les colocara una posible
respuesta que el usuario podra darnos y tambien los estamos posicionando y
asignandoloes una variable al principio co el “android:id=@+id/nombre que se
desee”.
En si los radio button sirven para darnos multiple opciones.
<RadioGroup
android:id="@+id/rg"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:checked="true"
android:text="mexico" />
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:checked="true"
android:text="peru" />
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:checked="true"
android:text="colombia" />
</RadioGroup>
Aquí se puede observar un button el cual se esta asignando para que al momento
de darle click este nos diga la respuesta que a elegido el usuario.
Tambien le estamos asiganando una variable y un nombre que el usuario podra
visualizar
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
Todo lo escrito anteriormente es esta escrito en la pestaña de .xml que como ya
se avia explicado es solo la estructura de nuestra aplicación.
Acontinuacion se explicara la pestaña de .java que es en donde iran todas
nuestras condiciones para que esta pueda funcionar.
Aquí se estan declarando las clases que se van a necesitar es como darles
permiso a todo lo empleado anterior mente en el codigo .xml.
package com.example.radio;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
Aquí se estan declarando las variables que se le asignaron anteriormente a los
objetos empleados.
public class MainActivity extends Activity implements OnClickListener {
View boton;
RadioGroup rg;
int checa;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rg=(RadioGroup)findViewById(R.id.rg);
boton=(View)findViewById(R.id.button1);
boton.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View arg0) {
checa=rg.getCheckedRadioButtonId();
Aquí se esta declarando un switch el cual nos servira para que se declaren los
radio button y asi nos permita escoger alguno de los que ya se declararon
anteriormente.Checa solo nos esta dejando escoger alguna opcion yrevisar si con
el boton cual es la opcion que emos elegido y darnos un mensage oculto.
switch(checa){
case R.id.radio0:Toast.makeText(this, "saludosos a los mexicanos",
Toast.LENGTH_SHORT).show();
break;
case R.id.radio1:Toast.makeText(this, "saludos peru",
Toast.LENGTH_SHORT).show();
break;
case R.id.radio2:Toast.makeText(this, "saludos colombianos",
Toast.LENGTH_SHORT).show();
break;
}
}
}
Asi es como se podra visualizar en un celular una ves instalado.
“ProgresBar”
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical" >
se declara el progress bar el cual es una barra se estado que en este caso nos
indica que tanto se esta cargando la aplicacion
<ProgressBar
android:id="@+id/progressBar1"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:indeterminate="false"
android:max="100"
android:padding="4dip" >
</ProgressBar>
Este se esta declarando para que se visualice la imagne o lo que este cargando
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textColor="#B61E14" >
</TextView>
<Button
android:id="@+id/button1"
android:layout_width="120dp"
android:layout_height="120dp"
android:background="@drawable/a"
android:onClick="startProgress" >
</Button>
Y esta se declara para que se visualice el resultado de la aplicacion en este caso
sera una imagen
<ImageView
android:id="@+id/image1"
android:layout_width="250sp"
android:layout_height="250sp" />
</LinearLayout>
Este es su java
package com.doggy.progess;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.TextView;
public class Progess extends Activity implements OnClickListener{
private ProgressBar progress;
private TextView text;
ImageView image1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_progess);
progress = (ProgressBar) findViewById(R.id.progressBar1);
text = (TextView) findViewById(R.id.textView1);
image1=(ImageView) findViewById (R.id.image1);
}
public void startProgress(View view) {
Runnable runnable = new Runnable() {
@Override
public void run() {
for (int i = 0; i <= 100; i++) {
final int value = i;
doFakeWork();
progress.post(new Runnable() {
@Override
public void run() {
text.setText(value + "/100");
progress.setProgress(value);
Aqui se esta declarando el if para saber cuanto tiempo tardara en cargar la
aplicacion
if(value==100){
image1.setImageResource(R.drawable.a);
}
}
}
);
}
}
};
new Thread(runnable).start();
}
private void doFakeWork() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
@Override
public void onClick(View o) {
}
}
“TimePicker”
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".Tiempo" >
Aqui se declara el time picker el cual igual se puede extraer
desde el menu que nos brinda el xml
Este nos servirá para declarar la hora en la que estamos o
declarar otra hora cualquiera
<TimePicker
android:id="@+id/time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" />
</RelativeLayout>
Y este es su java
En este se pondrán todas la condiciones para que se cambie la hora
para esto utilizaremos un if y un switch para que este se logre
realuzar
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class Tiempo extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tiempo);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is
present.
getMenuInflater().inflate(R.menu.tiempo, menu);
return true;
}
}
“Acelerometro”
*Aquí como ya se a explicado anteriormente se puede visualizar el inicio de este codigo en
donde se esta declaraondo como se iran posicionando los objetos que se vayan
empleando.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
*Aquí solo se visualizara un text view en el cual se podra cisualizar los
numeros que se vayan dando dependiendo de las inclinaciones que el celular vaya
teniendo
<TextView
android:id="@+id/acceleration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="X: Y: Z:"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
*Aquí se stan visualizando los permisos de las objetos que se iran empleando
desde el .xml.
package com.example.acelerometro;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.app.Activity;
import android.app.Notification.Action;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity implements SensorEventListener {
*Aquí se estan declarando las variables que anteriormente en el .xml ya se abian
emplementado y tambien otras que se utilizaran a lo largo del proceso.
Sensor accelerometer;
SensorManager sm;
TextView acceleration;
@Override
public void onCreate(Bundle savedInstanceState){
*Aquí se estan declarando nuevamente las variables para que se les permita utilizar
ciertos utencilios del celular que esn este caso es el sensor de movimiento para que pueda
identificar las inclinaciones que se vayan aciendo.
sm=(SensorManager)getSystemService(SENSOR_SERVICE);
accelerometer=sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sm.registerListener((SensorListener) this,accelerometer.TYPE_ACCELEROMETER);
acceleration=(TextView)findViewById(R.id.acceleration);
}
@Override
public void onAccuracyChanged(Sensor sensor,int accuracy){
}
//TODO Auto-generated method stub
@Override
public void onSensorChanged(SensorEvent event){
*Aquí se estan colocando las variables para que estas puedan visualizar el resultado de las
inclinaciones en la pantalla del celular que se visualizaran en el text view que ya antes se
habia colocado en el .xml
//TODO Auto-generated method stub
acceleration.setText("X:
"+event.values[0]+"nY:"+event.values[1]+"nZ:"+event.values[2]);
}
}
Asi es cmo se visualizara en un celular ya instalada correctamente y claramente con los
numeros respectivos que se iran colocando dependiendo de la posicion del celular.
“TabHost”
*Aquí estamos declarando nuevamente la posicion que tendra cada objeto que se vaya
posicionando en la pantalla principal
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
Aquí se visualizara la primera pestaña de la pantalla por que tabhost es una
aplicación para hacer pestañas ya predeterminadas desde el .xml
<TabHost
android:id="@+id/th"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
*Aquí se visualiza el editext que nos servira para que el usuario pueda escribir
lo que necesite
<EditText
android:id="@+id/et1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
*Aquí se visualiza un boton de muestra que en si no tendra una tarea especifica
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="boton de muestra"/>
</LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="match_parent"
android:layout_height="match_parent">
*Aquí se visualiza un boton el cual lo posicionaremos en la segunda pestaña que
no tendra una tarea en especifico solo sera de muestra
*Aquí se visualiza un text view el cual le servira al usuario para escribir el
texto que requiera
<TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="esta es la tercera tab" />
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
</LinearLayout>
*Aquí se puede visualizar que se estan declarando todos los objetos que se emplearon en
el codigo .xml
package com.example.tabhost;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;
public class MainActivity extends Activity {
*Aquí se visualiza que se esta declarando el tabhost con su variable que ya anteriormente
se le habia asignado.
TabHost th;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
*Aquí se les esta dando la tarea q ue ara cada tabhost que en este caso es una pestaña
que se visualizara en la pantalla del celular
th=(TabHost)findViewById(R.id.th);
//Tab1
th.setup();
*Aquí le esta ordenando que en la primera pantalla solo se visualize el mensage de
bienvenida
TabSpec ts1=th.newTabSpec("Tab1");
ts1.setIndicator("Bienvenido");
ts1.setContent(R.id.tab1);
th.addTab(ts1);
*Aquí le esta diciendo que se visualize en la tabhost 2 el mensage de contenido y un
boton de muestra que como ya se habia explicado no tiene una tarea especifica
//Tab2
th.setup();
TabSpec ts2=th.newTabSpec("Tab2");
ts2.setIndicator("contenido");
ts2.setContent(R.id.tab2);
th.addTab(ts2);
*Y en la ultima tabhost se le esta declarando que solo se visualize el mensage de
despedida
//Tab3
th.setup();
TabSpec ts3=th.newTabSpec("Tab3");
ts3.setIndicator("despedida");
ts3.setContent(R.id.tab3);
th.addTab(ts3);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Asi sera como se visualizara en la pantalla de un celular dependiendo de la pestaña que se
abra y se desee visualizar obiamente ya existente.
Conclusiones:
Solo queda decir que estas aplicaciones se utilizan dia con dia en los teléfonos celulares y
son muy importaten en nuestras vidas cootidianas

Más contenido relacionado

Destacado (11)

Ethical norms in business
Ethical norms in businessEthical norms in business
Ethical norms in business
 
As duas rãs
As duas rãs As duas rãs
As duas rãs
 
Regla de tres SENATI
Regla de tres SENATIRegla de tres SENATI
Regla de tres SENATI
 
Where Innovation Meets Geographic Information
Where Innovation Meets Geographic InformationWhere Innovation Meets Geographic Information
Where Innovation Meets Geographic Information
 
Dossier
DossierDossier
Dossier
 
Alisa Polykova "Techniques for holding a discussion"
Alisa Polykova "Techniques for holding a discussion"Alisa Polykova "Techniques for holding a discussion"
Alisa Polykova "Techniques for holding a discussion"
 
Axon franchise
Axon franchiseAxon franchise
Axon franchise
 
Gordon 2
Gordon 2Gordon 2
Gordon 2
 
Namasmaran And Stress Dr. Shriniwas J. Kashalikar
Namasmaran And Stress Dr. Shriniwas J. KashalikarNamasmaran And Stress Dr. Shriniwas J. Kashalikar
Namasmaran And Stress Dr. Shriniwas J. Kashalikar
 
Enrich Gis With Social Media And Open Data
Enrich Gis With Social Media And Open DataEnrich Gis With Social Media And Open Data
Enrich Gis With Social Media And Open Data
 
Community Manager N1
Community Manager N1Community Manager N1
Community Manager N1
 

Similar a manual

Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con AndroidTutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
Luis Ernesto Castillo Alfaro
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
Annie Mrtx
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
Annie Mrtx
 
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con AndroidTutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Luis Ernesto Castillo Alfaro
 

Similar a manual (20)

Manual de aplicaciones Moviles
Manual de aplicaciones MovilesManual de aplicaciones Moviles
Manual de aplicaciones Moviles
 
Manual(mario alberto rosales lara)
Manual(mario alberto rosales lara)Manual(mario alberto rosales lara)
Manual(mario alberto rosales lara)
 
Android
AndroidAndroid
Android
 
Troston lulu
Troston luluTroston lulu
Troston lulu
 
Practicas android studio efrain (1)
Practicas android studio efrain (1)Practicas android studio efrain (1)
Practicas android studio efrain (1)
 
Practicas android studio efrain
Practicas android studio efrainPracticas android studio efrain
Practicas android studio efrain
 
Practicas android studio efrain
Practicas android studio efrainPracticas android studio efrain
Practicas android studio efrain
 
Aplicaciones
AplicacionesAplicaciones
Aplicaciones
 
Reportes de practicas
Reportes de practicasReportes de practicas
Reportes de practicas
 
Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con AndroidTutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
Tutorial Nro 1 de Desarrollo de Aplicaciones Móviles con Android
 
"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10
 
Reportes de aplicaciones
Reportes de aplicacionesReportes de aplicaciones
Reportes de aplicaciones
 
Revista digital
Revista digitalRevista digital
Revista digital
 
Clases de Programación Android
Clases de Programación AndroidClases de Programación Android
Clases de Programación Android
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
 
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con AndroidTutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 

Último (6)

LA DECLAMACIÓN Y LOS RECURSOS NO VERBALES
LA DECLAMACIÓN Y LOS RECURSOS NO VERBALESLA DECLAMACIÓN Y LOS RECURSOS NO VERBALES
LA DECLAMACIÓN Y LOS RECURSOS NO VERBALES
 
DIABETES MELLITUS trabajo de investigación
DIABETES MELLITUS trabajo de investigaciónDIABETES MELLITUS trabajo de investigación
DIABETES MELLITUS trabajo de investigación
 
Willer Gehizon Sanchez Mora
Willer Gehizon Sanchez MoraWiller Gehizon Sanchez Mora
Willer Gehizon Sanchez Mora
 
Expo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdfExpo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdf
 
EVOLUCION DE LA ENFERMERIA QUIRURGICA Y ETICA 1.pptx
EVOLUCION DE LA ENFERMERIA QUIRURGICA Y ETICA 1.pptxEVOLUCION DE LA ENFERMERIA QUIRURGICA Y ETICA 1.pptx
EVOLUCION DE LA ENFERMERIA QUIRURGICA Y ETICA 1.pptx
 
Modelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdfModelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdf
 

manual

  • 1. Plantel: CECYTEM TECAMAC Tema: Manual de android “ADT” Nombre del alumno: Isabel García Hernández Nombre del profesor: René Domínguez escalona Grupo: 402 Carrera: Programación Turno: matutino Índice:  Hola Mundo  IMC  Factorial  Álbum  Rebosodroid  Listview  Sonido aniales
  • 2.  Video view  Notificaciones  Togglebutton  Checkbox  Radiobutton  Progressbar  Spinner  Webview  Timepicker  Tabhost  Acelerómetro  Canvas NTRODUCCION En este manual podremos observar la estructura de algunas aplicaciones. Tambie se observara para que sirve cada condición que se utilizan en las aplicaciones que se utilizan dia con dia en cada celular de este planeta
  • 3. “Hola mundo” Al abrir eclipse y crear una clase nueva automáticamente te abrirá dos pestañas una con el nobre que le ayas asignado mas la extensión “.XML” el cual es como el cuerpo de la aplicación en esta parte del programa podemos asignarle el tipo de color de fondo, en si es todo el diseño de la aplicación. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
  • 4. android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > El codigo anterior lo da automaticamente el sistema de eclipse es el tamaño de la pantalla y de cómo se irán ordenando todos los objetos que se vayan utilizando. <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> El codigo anterior es de un text view el cual sirve para mostrar textos que el programador coloque en este caso emos puesto “hello word” pero ustedes pueden utilizar cualquier texto de su agrado y tambien el tamaño y el color de letra deseado. </LinearLayout> Bueno el texto anterior de linear layout es solo para cerrar las condiciones estructuradas anterior mente este tambien es colocado al principio de todo el texto como pudiste aber observadoppuesto que se abre al inicio y se cierra hasta el final de todas los objetos utilizados. Y asi es como se visualizara en un celular
  • 5. Esta solo es una aplicación que te mostrara un texto en especifico con el color de fondo deseado y no tiene ninguna otra tarea mas que esa. “IMC” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:orientation="vertical" > *Aqui se colocara un editex para que el usuario pueda ingreasar cualquier numero el cual nos indicara que esa es su estatura. <EditText android:id="@+id/num" android:layout_width="match_parent" android:layout_height="50dp" android:layout_margin="10dp" android:background="#000000" android:textColor="#FFFFFF"
  • 6. android:hint="altura" android:numeric="decimal"/> *En el Segundo nos indicara su estatura del usuario el cual al igual que el otro podra ingresar el numero que el usuario requiera. <EditText android:id="@+id/numd" android:layout_width="match_parent" android:layout_height="50dp" android:layout_margin="10dp" android:background="#000000" android:textColor="#FFFFFF" android:hint="peso" android:numeric="decimal" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> *Aqui el boton nos servira para que al momento de presionarlo nos calule el índice de masa corporal con los datos ya introducidos anteriormente <Button android:id="@+id/cal" android:layout_width="match_parent" android:layout_height="50dp" android:layout_weight="1" android:layout_margin="10dp" android:background="#3366FF" android:text="calcular" android:textColor="#000000"/> *El Segundo nos servirá para que al momento de presionarlo nos borre los datos ya introducidos anteriormente y asi los podamos volver a introducir <Button android:id="@+id/bor" android:layout_width="match_parent" android:layout_height="50dp" android:layout_weight="1" android:layout_margin="10dp" android:background="#3366FF" android:text="Borrar" android:textColor="#000000"/> </LinearLayout> *El text view nos servirá para que nos muestre el resultado después de ya haber introducido los datos que se nos pide <TextView android:id="@+id/res"
  • 7. android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10dp" android:background="#000000" android:textColor="#FFFFFF"> </TextView> </LinearLayout> Acontinuacion te mostrare el codigo .java para que las condiciones se puedan cumplir correctamentamente. package com.abuelo.imc; import com.abuelo.imc.R; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class IMC extends Activity implements OnClickListener { *Aqui solo estamos declarando las variables para que estas puedan ser utilizadas correvtamente. EditText txtaltura,txtpeso; TextView txtResultado; Button btnCalcular,btnBorrar; @Override
  • 8. protected void onCreate(Bundle savedInstanceState) { *Aqui se esta especificando las variables a que le pertenecen de los objetos empleados ya anteriormente en el codigo .xml. super.onCreate(savedInstanceState); setContentView(R.layout.activity_imc); txtpeso=(EditText)findViewById(R.id.num); txtaltura=(EditText)findViewById(R.id.numd); txtResultado=(TextView)findViewById(R.id.res); btnCalcular=(Button)findViewById(R.id.cal); btnBorrar=(Button)findViewById(R.id.bor); btnCalcular.setOnClickListener(this); btnBorrar.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub *Como podras notar aqui se empleara un switch el cual nos ayudara para identificar si el usuario ya ingreso los datos de lo contario saldra un mensage que nos especifique que no hay ningun dato. switch(v.getId()){ case R.id.cal:
  • 9. String u=txtpeso.getText().toString(); String d=txtaltura.getText().toString(); *Tambien emplearemos un if para que este nos ayude a calcular el IMC (índice de masa corporal) y ai nos muestre el resultado final de esta if((u.equals("")|| d.equals("")) || (u.equals("")&& d.equals("")) ){ Toast.makeText(this,"Falta Valores", Toast.LENGTH_SHORT).show(); }else{ double uno=Double.parseDouble(txtpeso.getText().toString()); double dos=Double.parseDouble(txtaltura.getText().toString()); double die=uno*uno; double IMC=dos/die; txtResultado.setText("TU IMC ES : "+IMC+"n"); Toast.makeText(this,"Valores calculados", Toast.LENGTH_SHORT).show(); } break; case R.id.bor: txtpeso.setText(""); txtaltura.setText(""); txtResultado.setText(""); } } }
  • 10. Y asi será como se visualizara al momento de que se instale en el celular. Ya es tu decisión el diseño que requiera utilizar y en esta aplicación solo se calcula tu IMC que se calcula multiplicando tu peso por la altura . “Factorial” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:orientation="vertical" > <EditText android:id="@+id/num"
  • 11. android:layout_width="match_parent" android:layout_height="50dp" android:layout_margin="10dp" android:background="#FFFFFF" android:hint="numero1" android:numeric="decimal" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/cal" android:layout_width="match_parent" android:layout_height="50dp" android:layout_margin="10dp" android:layout_weight="1" android:background="#0CCC00" android:text="calcular" android:textColor="#000000" /> <Button android:id="@+id/bor" android:layout_width="match_parent" android:layout_height="50dp" android:layout_margin="10dp" android:layout_weight="1" android:background="#CCCC00" android:text="Borrar" android:textColor="#000000" /> </LinearLayout> <TextView android:id="@+id/res" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10dp" android:background="#FFFFFF" /> </LinearLayout> package com.example.factorial; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View;
  • 12. import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener{ EditText n; TextView r; Button fac, borr; Toast t; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); n=(EditText)findViewById(R.id.num); r=(TextView)findViewById(R.id.res); fac=(Button)findViewById(R.id.cal); borr=(Button)findViewById(R.id.bor); fac.setOnClickListener(this); borr.setOnClickListener(this); } @Override public void onClick(View v) { String a=n.getText().toString(); int e=0;
  • 13. switch(v.getId()){ case R.id.cal: if(a.equals("")){ t = Toast.makeText(this, "Inserta un valor chavo" , Toast.LENGTH_SHORT); t.show(); } else{ int b=Integer.parseInt(a); if(b==1){ r.setText("La factorial es = 1"); } if(b==2){ r.setText("La factorial es = 2"); } if(b>2){ int c=2; int d=3; int o=0; for(e=0; e<b; e++){ o=c*d; if(d==b){ r.setText("La factorial es = "+o); } else{
  • 15. Este se declara igual que el anterior pues es casi lo mimo solo que la diferenci es que a este se le debe declarar un objeto string para que guarde el numero y luego con el switch lo multiplique dependiendo de el numero que se vaya ingresando como por ejemplo si se coloca el numero 2 seria=1*2=2 .
  • 16. “Album” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="#000000"> Aqui se declararan todas las imagenes que se vayan a utilizar en nuestra aplicacion <ImageView android:id="@+id/image" android:layout_width="match_parent" android:layout_height="200sp" android:src="@drawable/a"/> <HorizontalScrollView android:layout_width="match_parent" android:layout_height="100sp"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:id="@+id/image1" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/a"/> <ImageView android:id="@+id/image3" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/c" /> <ImageView android:id="@+id/image2" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/b"/> <ImageView android:id="@+id/image4" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/d"/> <ImageView android:id="@+id/image5" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/e"/>
  • 17. <ImageView android:id="@+id/image6" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/f"/> <ImageView android:id="@+id/image7" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/g"/> <ImageView android:id="@+id/image8" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/h"/> <ImageView android:id="@+id/image9" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/i"/> <ImageView android:id="@+id/image10" android:layout_width="100sp" android:layout_height="100sp" android:src="@drawable/j"/> </LinearLayout> </HorizontalScrollView> Y tambien un boton para que nos de la opcion de cambiar el wallpaper <Button android:id="@+id/cambiar" android:layout_width="match_parent" android:layout_height="80sp" android:textColor="#FFFA33FF" android:text="Cambiar Wallpaper"/> </LinearLayout>
  • 18. A continuacion te mostrare el codigo java package pelon.wallpaperp; import android.os.Bundle; import android.app.Activity; import android.app.WallpaperManager; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; import android.widget.Toast; public class Wallpaperp extends Activity implements OnClickListener { *Aqui les estamos asignando una variable a las imagenes que utilizaremos. ImageView image, image1, image2, image3, image4, image5, image6, image7, image8, image9, image10; Button btn; int fondo; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); *Aqui le estamos declarando que imagen es cual a la variable. setContentView(R.layout.activity_wallpaperp); image=(ImageView)findViewById(R.id.image);
  • 19. image1=(ImageView)findViewById(R.id.image1); image2=(ImageView)findViewById(R.id.image2); image3=(ImageView)findViewById(R.id.image3); image4=(ImageView)findViewById(R.id.image4); image5=(ImageView)findViewById(R.id.image5); image6=(ImageView)findViewById(R.id.image6); image7=(ImageView)findViewById(R.id.image7); image8=(ImageView)findViewById(R.id.image8); image9=(ImageView)findViewById(R.id.image9); image10=(ImageView)findViewById(R.id.image10); btn=(Button)findViewById(R.id.cambiar); image.setOnClickListener(this); image1.setOnClickListener(this); image2.setOnClickListener(this); image3.setOnClickListener(this); image4.setOnClickListener(this); image5.setOnClickListener(this); image6.setOnClickListener(this); image7.setOnClickListener(this); image8.setOnClickListener(this); image9.setOnClickListener(this); image10.setOnClickListener(this); btn.setOnClickListener(this); }
  • 20. @Override public void onClick(View v) { *En este caso utilizaremos un switch para que nos de las varias opciones de imagenes que tenemos en nuestro álbum y también para que nos de la opción de cambiar el fondo // TODO Auto-generated method stub switch(v.getId()){ case R.id.image1: image.setImageResource(R.drawable.a); fondo=R.drawable.a; break; case R.id.image2: image.setImageResource(R.drawable.b); fondo=R.drawable.b; break; case R.id.image3: image.setImageResource(R.drawable.c); fondo=R.drawable.c; break; case R.id.image4: image.setImageResource(R.drawable.d); fondo=R.drawable.d; break; case R.id.image5: image.setImageResource(R.drawable.e); fondo=R.drawable.e;
  • 21. break; case R.id.image6: image.setImageResource(R.drawable.f); fondo=R.drawable.f; break; case R.id.image7: image.setImageResource(R.drawable.g); fondo=R.drawable.g; break; case R.id.image8: image.setImageResource(R.drawable.h); fondo=R.drawable.h; break; case R.id.image9: image.setImageResource(R.drawable.i); fondo=R.drawable.i; break; case R.id.image10: image.setImageResource(R.drawable.j); fondo=R.drawable.j; break; case R.id.cambiar: WallpaperManager mywp=WallpaperManager.getInstance(getApplicationContext()); try {
  • 22. mywp.setResource(fondo); }catch(Exception e){ e.printStackTrace(); } Toast.makeText(this,"Cambiar Wallpaper",Toast.LENGTH_LONG).show(); break; } } } Y también tendras que realizar una carpeta dentro de la carpeta res para que en ella puedas coopear todas las imágenes que quieras introducir y le tendras que dar refresh para que estas se guarden en la carpeta mdpi y también les tendras que dar nombres cortos a tus imágenes. Asi se visualizara en un celular ya instalada correctamente se visualizan las imágenes que se eligieron y también el botón de opción de cambiar wallpaper
  • 23. “ListView” <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/a" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > Aqui se puede visualizar una caja de texto donde el usuario podra ingresar cualquier tipo de texto <EditText android:id="@+id/elemento" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="0.3" android:background="#FFFFFF" android:contentDescription="agregarDescElemento" android:hint="AgregarElemento" android:marqueeRepeatLimit="marquee_forever" android:textColor="#000000" android:textSize="26sp" android:textStyle="bold" /> Aqui el boton nos servira para que el usuario pueda ingresar el texto que ya a escrito <Button android:id="@+id/agregar" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:background="#00FFFF" android:hint="agregar" /> </LinearLayout> Y aquí nuestro text view nos mostrara todos los textos que se lleguen a escribir <ListView android:id="@+id/lista" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout> A continuación te mostraremos el código java package com.example.list;
  • 24. import java.util.ArrayList; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; public class MainActivity extends Activity implements OnClickListener { EditText elemento; ArrayList<String> elementos; Button btn; ListView lista; ArrayAdapter<String> adaptador; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Estamos declarando las variables que se utilizaran y la fuuncion que tendran setContentView(R.layout.activity_main); lista=(ListView)findViewById(R.id.lista); elemento=(EditText)findViewById(R.id.elemento); btn=(Button)findViewById(R.id.agregar); elementos= new ArrayList<String>(); adaptador =new ArrayAdapter(this, android.R.layout.simple_list_item_1,elementos); lista.setAdapter(adaptador); btn.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub En este caso ahora utilizaremos un if para que este valla guardando los textos que se vallan escribiendo hy asi se visualizen nuestra pantalla. if(v.getId()==R.id.agregar){ elementos.add(elemento.getText().toString()); elemento.setText(""); adaptador.notifyDataSetChanged(); } }
  • 25. Y asi es como se ve la aplicación al final instalada en un celular correctamente
  • 26. “RebosoDroid” En esta aplicación utilizaremos dos conexiones para realizarla. Esta es la primera estructura de .xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > En esta parte solo hemos colocado dos editext para que el usuario pueda ingresar los datos que se solicitan <EditText android:id="@+id/nombre" android:layout_width="match_parent" android:layout_height="60sp" android:layout_margin="10sp" android:background="#cc00ff" android:hint="nombre" android:maxLength="20" android:textSize="50sp"/> <EditText android:id="@+id/edad" android:layout_width="match_parent" android:layout_height="60sp" android:layout_margin="10sp" android:background="#cc00ff" android:hint="edad" android:maxLength="20" android:textSize="50sp"/> Tambien hemos colocado dos botones que nos servirán para enviar los datos ya escritos a otra pagina y otro para borrar los datos <Button android:id="@+id/enviar" android:layout_width="match_parent" android:layout_height="60sp" android:layout_margin="10sp" android:background="#cc00ff" android:hint="Enviar" android:maxLength="20" android:textSize="50sp"/> <Button android:id="@+id/borrar" android:layout_width="match_parent" android:layout_height="60sp" android:layout_margin="10sp" android:background="#cc00ff" android:hint="Borrar"
  • 27. android:maxLength="20" android:textSize="50sp"/> </LinearLayout> Y su .java es el siguiente package com.Sparda.rebosodroid; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener { EditText nombre,edad; Button enviar,borrar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Aqui se estan declarando todas las variables de los obgetos que se utilizaron en el .xml setContentView(R.layout.activity_main); nombre=(EditText)findViewById(R.id.nombre); edad=(EditText)findViewById(R.id.edad); enviar=(Button)findViewById(R.id.enviar); borrar=(Button)findViewById(R.id.borrar); enviar.setOnClickListener(this); borrar.setOnClickListener(this); } @Override public void onClick(View v) { Y en este utilizaremos if para que esta condicion nos sirva para guardar o borrar los datos que se introduscan y nos mande a la siguiente pagina if(v.getId()==R.id.enviar){ String n=nombre.getText().toString();
  • 28. String e=edad.getText().toString(); if ((!n.equals("" ) || !e.equals("")) || (!n.equals("" ) && !e.equals(""))){ Intent enviardatos=new Intent(this, Recibe.class); enviardatos.putExtra("nombre", n); enviardatos.putExtra("edad", e); startActivity(enviardatos); }else{ Toast.makeText(this, "faltan valores", Toast.LENGTH_SHORT).show(); } if(v.getId()==R.id.borrar){ nombre.setText(""); edad.setText(""); } } } } El segundo código .xml es el siguiente el cual corresponde a la pagina donde nos mostrara un mensaje En este solo se coloca un text view puesto que solo lo que ara será mostrar un mensaje <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/resultado" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10sp" android:background="#ffffff" android:textSize="10sp"/> </LinearLayout> Y su estructura .java es la siguiente package com.Sparda.rebosodroid; import android.app.Activity; import android.os.Bundle; import android.widget.TextView;
  • 29. public class Recibe extends Activity{ Aqui solo se esta declarando los objetos que se utilizaron en el .xml TextView Resultado; String nombre=""; int edad=0; protected void onCreate(Bundle savedInstanceState){ Y se esta difiniendo lo que contendra cada objeto ya definido anteriormente y le esta dando permiso a la pagina principal de recibir los datos que ingresen super.onCreate(savedInstanceState); setContentView(R.layout.recibe); Resultado=(TextView)findViewById(R.id.resultado); Bundle recibedatos=getIntent().getExtras(); nombre=recibedatos.getString("nombre"); edad=Integer.parseInt(recibedatos.getString("edad")); Resultado.setText("Hola!!!!"+nombre+"n"+"Tu edad es:"+edad); } } Yasi es como se visualizan las dos pantallas al final que se instalan correctamente en el celeular
  • 30. “Sonido de animales” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/android" tools:context=".Animales" > En esta estructura solo se colocaran button en los cuales se le colocaran una imagen determinada para que se identifique de que se trata en lugar de poner solo textos <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:layout_weight="0.85" android:orientation="horizontal" > <Button android:id="@+id/a1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/caballo" /> <Button android:id="@+id/a2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/cuervo" /> <Button android:id="@+id/a3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/elefante" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:layout_weight="0.85" android:orientation="horizontal" >
  • 31. <Button android:id="@+id/a4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/lechuza" /> <Button android:id="@+id/a5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/leon" /> <Button android:id="@+id/a6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/lobo" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:layout_weight="0.85" android:orientation="horizontal" > <Button android:id="@+id/a7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/mosquito" /> <Button android:id="@+id/a8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:background="@drawable/perro" /> <Button android:id="@+id/a9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center"
  • 32. android:background="@drawable/vaca" /> </LinearLayout> </LinearLayout A continuación te mostraremos la estructura .java package com.abuelo.animales; import android.media.AudioManager; import android.media.SoundPool; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class Animales extends Activity implements OnClickListener{ SoundPool sp; Aqui se estan definiendo los valores que ya se le avian asignado en el .xml alos botones Button a1,a2,a3,a4,a5,a6,a7,a8,a9; int b1,b2,b3,b4,b5,b6,b7,b8,b9; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_animales);
  • 33. Yaqui se puede ver que se le estan definiendo los sonidos a cada boton en especifico a1=(Button)findViewById(R.id.a1); a2=(Button)findViewById(R.id.a2); a3=(Button)findViewById(R.id.a3); a4=(Button)findViewById(R.id.a4); a5=(Button)findViewById(R.id.a5); a6=(Button)findViewById(R.id.a6); a7=(Button)findViewById(R.id.a7); a8=(Button)findViewById(R.id.a8); a9=(Button)findViewById(R.id.a9); a1.setOnClickListener(this); a2.setOnClickListener(this); a3.setOnClickListener(this); a4.setOnClickListener(this); a5.setOnClickListener(this); a6.setOnClickListener(this); a7.setOnClickListener(this); a8.setOnClickListener(this); a9.setOnClickListener(this); sp= new SoundPool(8, AudioManager.STREAM_MUSIC,0); b1=sp.load(this,R.raw.caba, 1); b2=sp.load(this,R.raw.cue, 1); b3=sp.load(this,R.raw.ele, 1); b4=sp.load(this,R.raw.lechu, 1);
  • 34. b5=sp.load(this,R.raw.lion, 1); b6=sp.load(this,R.raw.lob, 1); b7=sp.load(this,R.raw.mosca, 1); b8=sp.load(this,R.raw.pero, 1); b9=sp.load(this,R.raw.vaco, 1); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.animales, menu); return true; } @Override En este caso se utilizara un switch para que nos de varias opciones de elegir cualquier boton que se encuentra en la pantalla y asi se pueda escuchar el sonido que se le ha predeterminado public void onClick(View v) { switch(v.getId()){ case R.id.a1: sp.play(b1, 1,1, 1, 0,1); break; case R.id.a2: sp.play(b2, 1,1, 1, 0,1); break; case R.id.a3: sp.play(b3, 1,1, 1, 0,1);
  • 35. break; case R.id.a4: sp.play(b4, 1,1, 1, 0,1); break; case R.id.a5: sp.play(b5, 1,1, 1, 0,1); break; case R.id.a6: sp.play(b6, 1,1, 1, 0,1); break; case R.id.a7: sp.play(b7, 1,1, 1, 0,1); break; case R.id.a8: sp.play(b8, 1,1, 1, 0,1); break; case R.id.a9: sp.play(b9, 1,1, 1, 0,1); break; } } }
  • 36. Y asi es como ya se puede visualizar nuestra aplicación ya intalada en un celular
  • 37. “Web view” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" > Se declarara un botan para que este pueda tomar la foto que se desee y se logre visualizar <Button android:id="@+id/botonCapturar" android:layout_width="91dp" android:layout_height="54dp" android:background="#0066gg" android:text="Capturar" android:textColor="#FFFFFF" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" > Tambien se declarara un image view par que en este se logre visualizar la fotografia ya capturada <ImageView android:id="@+id/imageViewFoto" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/botonCapturar" android:layout_margin="35sp" > </ImageView> </LinearLayout> </LinearLayout> A continuación te mostraremos el código .java package app.ejempl.video; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap;
  • 38. import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends Activity { ImageView imagen; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Aqui se puede observer que se estan declarando las variables con las funciones que impartiran imagen = (ImageView) findViewById(R.id.imageViewFoto); Button boton = (Button) findViewById(R.id.botonCapturar); boton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Intent intent = new Intent( android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 0); } });
  • 39. } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { Y aqui se puede observer que se ele esta dando permiso para que se logre tomar la fotografia y se visualice en el image view super.onActivityResult(requestCode, resultCode, data); Bitmap bitmap = (Bitmap) data.getExtras().get("data"); imagen.setImageBitmap(bitmap); } } Y asi es como se observara la fotografía deseada no se distingue mucho el marco por que el color de mi fondo es blanco al igual que el color de este.
  • 40. “Notificacion” En esta aplicación igual se utilizaran dos pantallas asi que aquí te mostramos la primera en .xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".Noti" > En esta solo se esta declarando un boton el cual nos servira para declararlo como si ya se ubiera descargado algo <Button android:id="@+id/boton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Iniciar" android:background="#FF00C5"/> </RelativeLayout> Y este es su .java package com.aronmith.notificacion; import android.os.Bundle; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.view.Menu; import android.view.View; import android.widget.Button;
  • 41. public class Pantallauno extends Activity { Aqui se estan declarando las variables que se utilizaran NotificationManager nm; private static final int ID_NOTIFICACION_PERSONAL= 1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Aqui se le estara dando permisos necesarios para que este se pueda realizar setContentView(R.layout.activity_pantallauno); Button boton = (Button)findViewById(R.id.boton); nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE); boton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Notification notification = new Notification(R.drawable.ic_launcher,"QUE ONDA XD", System.currentTimeMillis()); PendingIntent intencionpendiente= PendingIntent.getActivity(getApplicationContext(),0,new Intent(getApplicationContext(),Pantallados.class),0); notification.setLatestEventInfo(getApplicationContext(), "Notificacion", "Notificacion personal de Android", intencionpendiente);
  • 42. nm.notify(ID_NOTIFICACION_PERSONAL, notification); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.pantallauno, menu); return true; } public void onDestroy(){ super.onDestroy(); nm.cancel(ID_NOTIFICACION_PERSONAL); } } Esta es la segunda panatalla en la cual se observara el mensaje ya identificado es el código .xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".pantallados" > Aqui solo se utilizara un text view el cual nos servira para que salga el mensage ya especificado anteriormente
  • 43. <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hola que hace?" /> </RelativeLayout> Y este es su java package com.aronmith.notificacion; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class Pantallados extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { En este se esta declarando a que pantalla le dictara cuando tenga que salir el mensage super.onCreate(savedInstanceState); setContentView(R.layout.activity_pantallados); } @Override public boolean onCreateOptionsMenu(Menu menu) { Y aqui se ele esta dando permiso para que la principal le dege mencionar cuando se tendra que mostrar el mensage // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.pantallados, menu); return true; } }
  • 44. ncncnf ccm Asi es como se visualizaran las dos paginas una ves instaladas correctamente
  • 45. “Togglebutton” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".Togglebutton" > En este se va a visualizar el fondo de un color o una imagen en especifico <LinearLayout android:id="@+id/fondo" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > Aqui el toggle button para que aga un efecto rapido de cambio de imagenes <ToggleButton android:id="@+id/toggleButton1" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10sp" android:textOn="encendido" android:textOff="apagado" /> Esta es nuestra imagen la cual tendra que cambiar repentinamente al ejecutarlo en cierta forma es nuestro efecto <!-- <ImageView android:id="@+id/img1" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10sp" android:src="@drawable/coche" android:background="@drawable/coche" /> --> </LinearLayout> </LinearLayout> Este es su java package com.abuelo.togglebutton; import android.os.Bundle; import android.media.*; import android.app.Activity; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.LinearLayout; import android.widget.ToggleButton;
  • 46. public class Togglebutton extends Activity implements OnCheckedChangeListener { SoundPool sp; int audio; ToggleButton alarma; LinearLayout con; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_togglebutton); Aqui se estan declarando los obgetos que ya se an declarado en el .xml con su variable y lo que tendrán que realizar con = (LinearLayout) findViewById(R.id.fondo); alarma= (ToggleButton) findViewById(R.id.toggleButton1); alarma.setOnCheckedChangeListener(this); sp= new SoundPool(8, AudioManager.STREAM_MUSIC,0); audio=sp.load(this,R.raw.coche, 1); } @Override public void onCheckedChanged(CompoundButton CompoundButton, boolean b) { Y en esta parte se esta declarando el if para que se realice si elige prender o encender la aplicacion o apagarla para eso nos dan el else if (b) { con.setBackgroundResource(R.drawable.cochedos); sp.play(audio, 1, 1, 1, 0, 1); } else{ con.setBackgroundResource(R.drawable.coche); } } }
  • 47. Y esgta es la manera en la que se visualiza una ves ya instalada y ejecutada
  • 48. “CheckBox” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > *Aquí se puede visualizar que se esta declarando un check nox que es casi igual que un raio button por que es para colocar multiples opciones que se requieran colcar.Puesto que solo aquí se declaran los que se deseen y se les da la variable y el texto que se quiera visualizar en estas opciones. <CheckBox android:id="@+id/ch1" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Android" /> <CheckBox android:id="@+id/ch2" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Android" /> <CheckBox android:id="@+id/ch3" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Windows" /> </LinearLayout> *Aquí se visualizara qel codigo de .java donde se colocara el codigo necesario para que nuestar aplicación funcione correctamente. package com.example.checkboxdemo; Aquí estan las clases que se necesiatan para utilizar corretamente los objetos empleados import android.os.Bundle; import android.preference.CheckBoxPreference; import android.app.Activity;
  • 49. import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.CheckBox; import android.widget.Toast; public class MainActivity extends Activity { *Aquí se estan declarando las variables que ya se le abian asignado a los check box anteriormente en el codigo .xml CheckBox ch_Android,ch_Iphone,ch_Windows; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); *Aquí se esta declarando lo que le pertenece a cada check box con su variable asignada ya anteriormente. setContentView(R.layout.activity_main); ch_Android=(CheckBox) findViewById(R.id.ch1); ch_Iphone=(CheckBox) findViewById(R.id.ch2); ch_Windows=(CheckBox) findViewById(R.id.ch3); OnClickListener l=new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub *Aquí se esta declarando un if para que la aplicación pueda visualizar que opcion esta eligiendo en si para que al momento que se elija y se quiera cambiar la opcion no se quede esta y asi se pueda reelegir y para que esto ocurra tambien se colocara else if, else
  • 50. que se ria como un case pero en este se colocara como para reelegir y no se quede la primera opcion y al mismo salga un mensage oculto que te diga la opcion que as elegido. if(ch_Android.isChecked()) { Toast.makeText(MainActivity.this, "Android", Toast.LENGTH_SHORT).show(); } else if (ch_Iphone.isChecked()){ Toast.makeText(MainActivity.this,"Iphone", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "WindoWs", Toast.LENGTH_SHORT).show(); } } }; ch_Android.setOnClickListener(l); ch_Iphone.setOnClickListener(l); ch_Windows.setOnClickListener(l); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true;
  • 51. } } Asi es como se visualizara en un celular al ya instalar la aplicación propiamente.
  • 52. “Radio Button” Como anterior mente se explico este codigo es para dec larar como se iran posicionando los objetos que se vallan colocando que en este caso seran textview, buttons y radio button. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_vertical_margin" android:paddingRight="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_horizontal_margin" tools:context=".MainActivity" > El codigo siquiente es de un text view el cual le estamos colocando una pregunta que es “de que pais eres” con esto estamos declarando que en nuestar pantalla se cisualizara esta preunta para que usuario la pueda visualizar <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="de que pais eres" android:textAppearance="?android:attr/textAppearanceLarge" /> A partir de aquí podras visualizar tres radio button los cuales tendran asta el final en un “android:text=” esto quiere decir que se les colocara una posible respuesta que el usuario podra darnos y tambien los estamos posicionando y asignandoloes una variable al principio co el “android:id=@+id/nombre que se desee”. En si los radio button sirven para darnos multiple opciones. <RadioGroup android:id="@+id/rg" android:layout_width="wrap_content" android:layout_height="wrap_content" > <RadioButton android:id="@+id/radio0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:checked="true" android:text="mexico" /> <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:checked="true" android:text="peru" /> <RadioButton android:id="@+id/radio2"
  • 53. android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:checked="true" android:text="colombia" /> </RadioGroup> Aquí se puede observar un button el cual se esta asignando para que al momento de darle click este nos diga la respuesta que a elegido el usuario. Tambien le estamos asiganando una variable y un nombre que el usuario podra visualizar <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> </LinearLayout> Todo lo escrito anteriormente es esta escrito en la pestaña de .xml que como ya se avia explicado es solo la estructura de nuestra aplicación. Acontinuacion se explicara la pestaña de .java que es en donde iran todas nuestras condiciones para que esta pueda funcionar. Aquí se estan declarando las clases que se van a necesitar es como darles permiso a todo lo empleado anterior mente en el codigo .xml. package com.example.radio; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.Toast; Aquí se estan declarando las variables que se le asignaron anteriormente a los objetos empleados. public class MainActivity extends Activity implements OnClickListener { View boton; RadioGroup rg; int checa; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rg=(RadioGroup)findViewById(R.id.rg); boton=(View)findViewById(R.id.button1); boton.setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu);
  • 54. return true; } @Override public void onClick(View arg0) { checa=rg.getCheckedRadioButtonId(); Aquí se esta declarando un switch el cual nos servira para que se declaren los radio button y asi nos permita escoger alguno de los que ya se declararon anteriormente.Checa solo nos esta dejando escoger alguna opcion yrevisar si con el boton cual es la opcion que emos elegido y darnos un mensage oculto. switch(checa){ case R.id.radio0:Toast.makeText(this, "saludosos a los mexicanos", Toast.LENGTH_SHORT).show(); break; case R.id.radio1:Toast.makeText(this, "saludos peru", Toast.LENGTH_SHORT).show(); break; case R.id.radio2:Toast.makeText(this, "saludos colombianos", Toast.LENGTH_SHORT).show(); break; } } } Asi es como se podra visualizar en un celular una ves instalado.
  • 55. “ProgresBar” <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:orientation="vertical" > se declara el progress bar el cual es una barra se estado que en este caso nos indica que tanto se esta cargando la aplicacion <ProgressBar android:id="@+id/progressBar1" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:indeterminate="false" android:max="100" android:padding="4dip" > </ProgressBar> Este se esta declarando para que se visualice la imagne o lo que este cargando <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:textColor="#B61E14" > </TextView> <Button android:id="@+id/button1" android:layout_width="120dp" android:layout_height="120dp" android:background="@drawable/a" android:onClick="startProgress" > </Button> Y esta se declara para que se visualice el resultado de la aplicacion en este caso sera una imagen <ImageView android:id="@+id/image1" android:layout_width="250sp" android:layout_height="250sp" /> </LinearLayout> Este es su java package com.doggy.progess; import android.app.Activity;
  • 56. import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; public class Progess extends Activity implements OnClickListener{ private ProgressBar progress; private TextView text; ImageView image1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_progess); progress = (ProgressBar) findViewById(R.id.progressBar1); text = (TextView) findViewById(R.id.textView1); image1=(ImageView) findViewById (R.id.image1); } public void startProgress(View view) { Runnable runnable = new Runnable() {
  • 57. @Override public void run() { for (int i = 0; i <= 100; i++) { final int value = i; doFakeWork(); progress.post(new Runnable() { @Override public void run() { text.setText(value + "/100"); progress.setProgress(value); Aqui se esta declarando el if para saber cuanto tiempo tardara en cargar la aplicacion if(value==100){ image1.setImageResource(R.drawable.a); } } } ); } } }; new Thread(runnable).start(); }
  • 58. private void doFakeWork() { try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } } @Override public void onClick(View o) { } }
  • 59. “TimePicker” <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".Tiempo" > Aqui se declara el time picker el cual igual se puede extraer desde el menu que nos brinda el xml Este nos servirá para declarar la hora en la que estamos o declarar otra hora cualquiera <TimePicker android:id="@+id/time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" /> </RelativeLayout> Y este es su java En este se pondrán todas la condiciones para que se cambie la hora para esto utilizaremos un if y un switch para que este se logre realuzar import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class Tiempo extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tiempo); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.tiempo, menu); return true; } }
  • 60.
  • 61. “Acelerometro” *Aquí como ya se a explicado anteriormente se puede visualizar el inicio de este codigo en donde se esta declaraondo como se iran posicionando los objetos que se vayan empleando. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > *Aquí solo se visualizara un text view en el cual se podra cisualizar los numeros que se vayan dando dependiendo de las inclinaciones que el celular vaya teniendo <TextView android:id="@+id/acceleration" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="X: Y: Z:" android:textAppearance="?android:attr/textAppearanceLarge" /> </LinearLayout> *Aquí se stan visualizando los permisos de las objetos que se iran empleando desde el .xml. package com.example.acelerometro; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorListener; import android.hardware.SensorManager; import android.os.Bundle; import android.app.Activity; import android.app.Notification.Action; import android.view.Menu;
  • 62. import android.widget.TextView; public class MainActivity extends Activity implements SensorEventListener { *Aquí se estan declarando las variables que anteriormente en el .xml ya se abian emplementado y tambien otras que se utilizaran a lo largo del proceso. Sensor accelerometer; SensorManager sm; TextView acceleration; @Override public void onCreate(Bundle savedInstanceState){ *Aquí se estan declarando nuevamente las variables para que se les permita utilizar ciertos utencilios del celular que esn este caso es el sensor de movimiento para que pueda identificar las inclinaciones que se vayan aciendo. sm=(SensorManager)getSystemService(SENSOR_SERVICE); accelerometer=sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); sm.registerListener((SensorListener) this,accelerometer.TYPE_ACCELEROMETER); acceleration=(TextView)findViewById(R.id.acceleration); } @Override public void onAccuracyChanged(Sensor sensor,int accuracy){ } //TODO Auto-generated method stub @Override public void onSensorChanged(SensorEvent event){
  • 63. *Aquí se estan colocando las variables para que estas puedan visualizar el resultado de las inclinaciones en la pantalla del celular que se visualizaran en el text view que ya antes se habia colocado en el .xml //TODO Auto-generated method stub acceleration.setText("X: "+event.values[0]+"nY:"+event.values[1]+"nZ:"+event.values[2]); } } Asi es cmo se visualizara en un celular ya instalada correctamente y claramente con los numeros respectivos que se iran colocando dependiendo de la posicion del celular.
  • 64. “TabHost” *Aquí estamos declarando nuevamente la posicion que tendra cada objeto que se vaya posicionando en la pantalla principal <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > Aquí se visualizara la primera pestaña de la pantalla por que tabhost es una aplicación para hacer pestañas ya predeterminadas desde el .xml <TabHost android:id="@+id/th" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_alignParentTop="true" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TabWidget android:id="@android:id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content" > </TabWidget> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:id="@+id/tab1" android:layout_width="match_parent" android:layout_height="match_parent" > *Aquí se visualiza el editext que nos servira para que el usuario pueda escribir lo que necesite <EditText android:id="@+id/et1" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
  • 65. <LinearLayout android:id="@+id/tab2" android:layout_width="match_parent" android:layout_height="match_parent" > *Aquí se visualiza un boton de muestra que en si no tendra una tarea especifica <Button android:id="@+id/btn1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="boton de muestra"/> </LinearLayout> <LinearLayout android:id="@+id/tab3" android:layout_width="match_parent" android:layout_height="match_parent"> *Aquí se visualiza un boton el cual lo posicionaremos en la segunda pestaña que no tendra una tarea en especifico solo sera de muestra *Aquí se visualiza un text view el cual le servira al usuario para escribir el texto que requiera <TextView android:id="@+id/tv1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="esta es la tercera tab" /> </LinearLayout> </FrameLayout> </LinearLayout> </TabHost> </LinearLayout> *Aquí se puede visualizar que se estan declarando todos los objetos que se emplearon en el codigo .xml package com.example.tabhost; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.TabHost; import android.widget.TabHost.TabSpec; public class MainActivity extends Activity {
  • 66. *Aquí se visualiza que se esta declarando el tabhost con su variable que ya anteriormente se le habia asignado. TabHost th; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); *Aquí se les esta dando la tarea q ue ara cada tabhost que en este caso es una pestaña que se visualizara en la pantalla del celular th=(TabHost)findViewById(R.id.th); //Tab1 th.setup(); *Aquí le esta ordenando que en la primera pantalla solo se visualize el mensage de bienvenida TabSpec ts1=th.newTabSpec("Tab1"); ts1.setIndicator("Bienvenido"); ts1.setContent(R.id.tab1); th.addTab(ts1); *Aquí le esta diciendo que se visualize en la tabhost 2 el mensage de contenido y un boton de muestra que como ya se habia explicado no tiene una tarea especifica //Tab2 th.setup(); TabSpec ts2=th.newTabSpec("Tab2"); ts2.setIndicator("contenido"); ts2.setContent(R.id.tab2); th.addTab(ts2);
  • 67. *Y en la ultima tabhost se le esta declarando que solo se visualize el mensage de despedida //Tab3 th.setup(); TabSpec ts3=th.newTabSpec("Tab3"); ts3.setIndicator("despedida"); ts3.setContent(R.id.tab3); th.addTab(ts3); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } Asi sera como se visualizara en la pantalla de un celular dependiendo de la pestaña que se abra y se desee visualizar obiamente ya existente.
  • 68. Conclusiones: Solo queda decir que estas aplicaciones se utilizan dia con dia en los teléfonos celulares y son muy importaten en nuestras vidas cootidianas