You are on page 1of 14

Crear un nuevo proyecto en Android Studio

Al igual que siempre, abriremos nuestro IDE Android Studio y crearemos un nuevo
proyecto, llamado Activities (o el nombre que le queramos dar). Rellenaremos los datos
se la siguiente manera:

Name: Activities

SDK API 19

Empty Activity

El resto de parmetros los podemos dejar por defecto. Una vez termine de cargar el
proyecto, lo primero que vamos a hacer es lo bsico, es decir, vamos a aadir un View en
forma de texto, con lo que queramos, y un botn que ponga Acerca de que, ms adelante,
nos mostrar los crditos de la aplicacin. Para ello arrastraremos ambos elementos desde
la lista de Views a la actividad y modificaremos sus propiedades para que tome la
apariencia que nos guste.

Una vez tenemos esto hecho, vamos a crear un segundo Activity, el cual mostrar la
informacin de Acerca De.

Crear un segundo Activity

Vamos a crear un segundo Activity. Para ello hacemos clic con el botn derecho en la lista
de archivos del proyecto, sobre app y seleccionamos New > Activity > Empty Activity

Automticamente se nos va a crear una nueva actividad en nuestro proyecto, a la cual la


podemos asignar el nombre que queramos. Ahora ya podemos ver esta segunda actividad.

Lo nico que nos queda por hacer es darla forma con los Views, por ejemplo:

Ahora solo nos queda hacer que al pulsar el botn de la primera actividad cargue la segunda
donde nos aparezcan los crditos.

Cmo lanzar el segundo Activity desde el primero, y


viceversa
Con los Activities ya creados, lo nico que nos queda es programar lo que queremos que
hagan los Views. En este caso, lo que tenemos que hacer es que al pulsar el botn cargue la
otra View que tenemos asociada. Nada del otro mundo.
Debemos escribir cdigo en las dos actividades, en la MainActivity y en la AcercaDe.
Cdigo de la MainActivity
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.botonact1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent (v.getContext(),
AcercaDe.class);
startActivityForResult(intent, 0);
}
});
}
}

Cdigo del AcercaDe


public class AcercaDe extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_acercade);
Button btn2 = (Button) findViewById(R.id.botonact2);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent2 = new Intent (v.getContext(),
MainActivity.class);
startActivityForResult(intent2, 0);
}
});
}
}

El resultado final de la aplicacin queda de la siguiente manera:

Cmo cambiar de actividad pasndole variables o


parmetros
Es posible que en alguna ocasin nos encontremos con la necesidad de pasar variables,
parmetros o informacin de una actividad a otra. Esto se puede hacer de forma sencilla
con dos funciones adicionales:

putExtra()

getExtras()

A continuacin vamos a ver cmo pasar parmetros de la actividad 1, llamada por nosotros
MainActivity a la segunda actividad, llamada AcercaDe. Lo primero que vamos a hacer,
aprovechando para practicar, es escribir un cuadro de introduccin de texto donde
escribiremos lo que queramos y aparecer, al cambiar, en la segunda actividad.
Resumen:

Creamos un TextField en Activity1

Creamos un TextView en Activity 2

Utilizamos putExtra() para sacar el contenido de TextField y getExtra para cargar


dicho contenido en el TextView.

Vamos a ver. Una vez introducidos tanto el TextField como el TextView, la apariencia de las
actividades ser similar a la siguiente.

El cdigo fuente de MainActivity ser el siguiente:


package es.movilzona.activities;
import
import
import
import
import
import
import

android.content.Intent;
android.support.v7.app.AppCompatActivity;
android.os.Bundle;
android.view.View;
android.widget.Button;
android.widget.EditText;
android.widget.TextView;

public class MainActivity extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Cargamos el texto a exportar
final EditText textoexportar;
textoexportar=(EditText)findViewById(R.id.pasarTexto);
Button btn = (Button) findViewById(R.id.botonact1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent (v.getContext(),
AcercaDe.class);
//Exportar parametro
intent.putExtra("frase",
textoexportar.getText().toString());

}
}

//
startActivityForResult(intent, 0);

});

El cdigo de AcercaDe ser el siguiente:


package es.movilzona.activities;
import
import
import
import
import
import

android.content.Intent;
android.support.v7.app.AppCompatActivity;
android.os.Bundle;
android.view.View;
android.widget.Button;
android.widget.TextView;

public class AcercaDe extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_acercade);
//Importamos texto de Act.1
Bundle bundle = getIntent().getExtras();
String fraseimportada=bundle.getString("frase");
String textoPasado = fraseimportada;

TextView out = (TextView)findViewById(R.id.textoPasado);


out.setText(textoPasado);
Button btn2 = (Button) findViewById(R.id.botonact2);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent2 = new Intent (v.getContext(),
MainActivity.class);
startActivityForResult(intent2, 0);
}
});
}
}

A continuacin os dejamos las capturas de la aplicacin:

Si tienes alguna duda, psate por el Foro de MovilZona donde hemos creado un post para
las consultas al respecto de este tema para el curso de desarrollo Android, como venimos
haciendo para cada uno.

Enlaces

Todos los temas del Curso de Desarrollo Android MovilZona

Todos los post para preguntar dudas y consultas de cada tema en el Foro de
Desarollo Android de MovilZona

You might also like