----Clase principal******
import dam.clase.asteroide.AcercaDe;
import dam.clase.asteroide.R;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
public static AlmacenPuntuaciones almacen=new AlmacenPuntuacionesArray();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/*@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;
}*/
public void lanzarAcercaDe(View view){
Intent i = new Intent(this, AcercaDe.class);
startActivity(i);
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true; // true -> el menú ya está visible
}
/*
@Override public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.acercaDe:
lanzarAcercaDe(null);
break;
}
return true; // true -> consumimos el item, no se propaga
}
*/
public void lanzarPuntuaciones(View view) {
Intent i = new Intent(this, Puntuaciones.class);
startActivity(i);
}
}
------CLASE PUNTUACIONES******
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class Puntuaciones extends ListActivity {
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.puntuaciones);
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,MainActivity.almacen.listaPuntuaciones(10)));
}
}
-------CLASE AlmacenPuntuacionesArray*****
import java.util.Vector;
public class AlmacenPuntuacionesArray implements AlmacenPuntuaciones{
private Vector<String> puntuaciones;
public AlmacenPuntuacionesArray() {
puntuaciones= new Vector<String>();
puntuaciones.add("123000 Pepito Domingez");
puntuaciones.add("111000 Pedro Martinez");
puntuaciones.add("011000 Paco Pérez");
}
@Override public void guardarPuntuacion(int puntos,
String nombre, long fecha) {
puntuaciones.add(0, puntos + " "+ nombre);
}
@Override public Vector<String> listaPuntuaciones(int cantidad) {
return puntuaciones;
}
}
-----CLASE AlmacenPuntuaciones******
import java.util.Vector;
public interface AlmacenPuntuaciones {
public void guardarPuntuacion(int puntos,String nombre,long fecha);
public Vector<String> listaPuntuaciones(int cantidad);
}
------PUNTUACIONES:XML*******
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Puntuaciones"
android:gravity="center"
android:layout_margin="10px"
android:textSize="10pt"/>
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1">
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawSelectorOnTop="false" />
<TextView
android:id="@android:id/empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="No hay puntuaciones" />
</FrameLayout>
</LinearLayout>
viernes, 15 de noviembre de 2013
ListWiev WORD
Ejercicio paso a paso: Un ListView que visualiza una lista de Strings (I)
Crear una interface
En ella introducimos el siguiente código
public void guardarPuntuacion(int puntos,String nombre,long fecha);
public Vector<String> listaPuntuaciones(int cantidad);
Añadimos una nueva clase llamada AlmacenPuntuacionesArray.java,
con el siguiente código
package dam.clase.asteroide;
import java.util.Vector;
public class
AlmacenPuntuacionesArray implements AlmacenPuntuaciones{
private Vector<String>
puntuaciones;
public
AlmacenPuntuacionesArray() {
puntuaciones= new
Vector<String>();
puntuaciones.add("123000 Pepito
Domingez");
puntuaciones.add("111000 Pedro
Martinez");
puntuaciones.add("011000 Paco
Pérez");
}
@Override public void guardarPuntuacion(int puntos,
String nombre, long fecha) {
puntuaciones.add(0, puntos + " "+ nombre);
}
@Override public Vector<String>
listaPuntuaciones(int cantidad) {
return
puntuaciones;
}
}
En el MainActivity.java deberos crear la variable global con
las puntuaciones
public static AlmacenPuntuaciones almacen= new AlmacenPuntuacionesArray();
Crear la nueva clase Puntuaciones.java
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class Puntuaciones extends ListActivity
{
@Override public void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.puntuaciones);
setListAdapter(new
ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,MainActivity.almacen.listaPuntuaciones(10)));
}
}
Inscribir la nueva actividad
Ahora ya funciona
Ejecución
Suscribirse a:
Entradas (Atom)