Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Trabajando con varios Activitys

Trabajando con varios Activitys

Autor jc mouse lunes, julio 22, 2013

Hasta este momento utilizamos un solo Activity para desarrollar nuestras aplicaciones, sin embargo es común que las aplicaciones tengan más de una ventana, trabajar con varios activitys no es complicado si antes tienes bien claro que es lo que quieres lograr, es decir, debes realizar un esquema de las diferentes ventanas que tendrá tu App y su relación entre ellas.

En el siguiente ejemplo, tenemos 4 Activitys A,B,C y D donde A es el activity principal de este se abre el Activity B, B puede abrir tanto el Activity C como el Activity D y D puede abrir a su vez el Activity A.

Multi Activity

Teniendo este simple esquema en cuenta, ya estamos listos para implementar el código en Eclipse.

Creamos una nueva aplicación:

Application Name: Multi Activitys

Project Name: MultiActivitys

Package Name: com.tutorial.multiactivitys

Al primer activity,  la clase se llamara AActivity.java, eclipse crea automáticamente el XML respectivo activity_a.xml.

Para crear nuevas clases y ventanas, Clic derecho en cualquier paquete de la carpeta SRC -> New -> Other -> Android -> Android Activity -> Next -> Tenemos varias opciones de ventanas, elegimos Blank Activity -> Next -> colocamos los datos de la nueva Activity (BActivity) -> Finish

bxml

Realizamos el mismo paso para agregar las restantes clases CActivity.java y DActivity.java, nuestro proyecto tiene ahora la siguiente estructura:

eclipse proyecto

Para desplazarnos por las diferentes ventanas, podemos hacer uso de Button, TextView, ImageView, etc.

Para abrir una nueva activity, se utiliza la instrucción:

startActivity( new Intent(this, NOMBRE_CLASE_ACTIVITY.class));

IMPLEMENTACIÓN

Implementaremos el código para abrir la activity B desde la activity A, el código es similar si no el mismo para las demás clases.

A nuestro layout activity_a.xml, le añadimos un button de nombre “@+id/button1” lo posicionamos casi al centro de la pantalla, en realidad no importa donde lo coloques 🙂

Abrimos la clase AActivity.java y tenemos:

package com.tutorial.multiactivitys;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class AActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_a);
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.a, menu);
  return true;
 }

}

La clase modificada es:

package com.tutorial.multiactivitys;

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;

public class AActivity extends Activity implements OnClickListener {

 Button button;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_a);
  //
  button = (Button) findViewById( R.id.button1 );
  button.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.a, menu);
  return true;
 }

 @Override
 public void onClick(View arg0) {
  //Inicia nueva actividad 
  startActivity( new Intent(this, BActivity.class));
 }

}

Añadimos el OnClickListener para saber cuando el usuario presiona el botón, en el evento onClick del button añadimos la instrucción startActivity y eso es todo.

Si ejecutas ahora el proyecto, seras capaz de abrir la ventana B desde la ventana A, para abrir más ventanas, desde esta misma u otra activity, el procedimiento es similar. Puedes ver en el siguiente video la aplicación completa

Proyecto Multi Activitys

🙂

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Control de Stock en Java (Parte 1)

Control de Stock en Java (Parte 1)

Un SGA “Sistema de Gestión de Almacenes”  es un programa informático destinado a gestionar las entradas y sa...

Software Libre: Decompilador Java

Software Libre: Decompilador Java

El proyecto “Java Decompiler” tiene como objetivo desarrollar herramientas para descompilar y analizar byte...

Conexion Visual Basic a Firebird

Conexion Visual Basic a Firebird

En este tutorial nos conectaremos a una base de datos de Firebird utilizando el lenguaje de Visual Basic, el proyecto se...

JSpinner: Cambiar color de fondo y fuente

JSpinner: Cambiar color de fondo y fuente

Un JSpinner es un componente swing de java con una caja de texto y un par de botones que nos permiten incrementar  y dec...

Leer datos de Firebase desde Android

Leer datos de Firebase desde Android

En este post crearemos una aplicación en Android Studio para conectarnos con nuestra base de datos de Firebase y leer al...

Ecuación de segundo grado

Ecuación de segundo grado

Problema: Implemente el código necesario en Kotlin para resolver una ecuación de segundo grado de números reales: Soluci...

1 comentario en “Trabajando con varios Activitys”

  1. Jose dice:

    Podrias hacer un tutorial del uso de los fragment.

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

Acierta los colores o Adivina los colores es un sencillo juego que consiste en que dado 6 colores “rojo”,...

“MyBatis es una herramienta de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacena...

MyBatis es un framework de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacenados a part...

Webcam Capture es un API  que permite usar una cámara web incorporada o externa directamente desde código Java utilizand...

Herramientas

Generador de Enlaces a Whatsapp