Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

wiki:apwidgets [2012/02/16 16:12]
ultralab creado
wiki:apwidgets [2012/02/16 17:10] (actual)
ultralab
Línea 1: Línea 1:
 http://code.google.com/p/apwidgets/ http://code.google.com/p/apwidgets/
 +
 +<code java>
 +// APwidgets import
 +import apwidgets.*;
 +
 +// APwidgets botones y reproductores
 +APMediaPlayer voz, ruido;
 +APWidgetContainer widgetContainer; 
 +APButton masVoz, menosVoz;
 +APButton masRuido, menosRuido;
 +float volVoz, volRuido;
 +
 +// GPS
 +GPS gps;
 +
 +void setup() {
 +  // Sketch stays in portrait mode, even when the phone is rotated
 +  orientation(PORTRAIT);
 +  
 +  widgetContainer = new APWidgetContainer(this);
 +  menosVoz = new APButton(10, 70, "- voz");
 +  masVoz = new APButton(120, 70, "+ voz");
 +  menosRuido = new APButton(10, 140, "- ruido");
 +  masRuido = new APButton(120, 140, "+ ruido");
 +  widgetContainer.addWidget(menosVoz);
 +  widgetContainer.addWidget(masVoz);
 +  widgetContainer.addWidget(menosRuido);
 +  widgetContainer.addWidget(masRuido);  
 +  
 +  voz = new APMediaPlayer(this); // crea un reproductor de sonido
 +  voz.setMediaFile("voz.mp3"); // carga el reproductor con un archivo de sonido
 +  voz.start(); // comienza (desde el inicio) la reproducción
 +  voz.setLooping(true); // reproduccion en loop
 +  voz.setVolume(volVoz, volVoz); // Volumenes canales izq y der. De 0 a 1
 +
 +  ruido = new APMediaPlayer(this); // crea un reproductor de sonido
 +  ruido.setMediaFile("ruido.mp3"); // carga el reproductor con un archivo de sonido
 +  ruido.start(); // comienza (desde el inicio) la reproducción
 +  ruido.setLooping(true); // reproduccion en loop
 +  ruido.setVolume(volRuido, volRuido); // Volumenes canales izq y der. De 0 a 1
 +
 +  gps = new GPS(1000, 20);
 +}
 +
 +
 +void draw() {
 +
 +  background(0);
 +  text("volumen voz, de 0 a 1: " + volVoz, 10, 10); // muestra el volumen de la voz
 +  text("volumen voz, de 0 a 1: " + volRuido, 10, 30); // muetra el volumen del sonido  
 +
 +  // Display current GPS data
 +  text("Latitude: " + gps.currentLatitude, 20, 240);
 +  text("Longitude: "+ gps.currentLongitude, 20, 275);
 +  text("Accuracy: " + gps.currentAccuracy, 20, 310);
 +  text("Provider: " + gps.currentProvider, 20, 345);
 +}
 +
 +
 +//onClickWidget is called when a widget is clicked/touched
 +void onClickWidget(APWidget widget){
 +  
 +  if(widget == menosVoz){ //if it was button1 that was clicked
 +      volVoz = constrain(volVoz-0.1, 0, 1);
 +      voz.setVolume(volVoz, volVoz);
 +  }
 +  else if(widget == masVoz){ //or if it was button2
 +      volVoz = constrain(volVoz+0.1, 0, 1);
 +      voz.setVolume(volVoz, volVoz); 
 +  }
 +  else if(widget == masRuido){ //or if it was button2
 +      volRuido = constrain(volRuido+0.1, 0, 1);
 +      ruido.setVolume(volRuido, volRuido);
 +  }
 +  else if(widget == menosRuido){ //or if it was button2
 +      volRuido = constrain(volRuido-0.1, 0, 1);
 +      ruido.setVolume(volRuido, volRuido);
 +  }  
 +  
 +}
 +
 +
 +// Cerramos los MediaPlayer que hemos tomado de Android
 +// al salir de nuestro programa
 +public void onDestroy() {
 +
 +  super.onDestroy(); // cierre de nuestro programa
 +  if(voz!=null) { // comprobamos si nuestro MediaPlayer existe todavía
 +    voz.release(); // cerramos el MediaPlayer
 +  }
 +  if(ruido!=null) { // comprobamos si nuestro MediaPlayer existe todavía
 +    ruido.release(); // cerramos el MediaPlayer
 +  }
 +  
 +}
 +
 +
 +
 +// Necesario override para GPS:
 +void onResume() {
 +  super.onResume();
 +  if (gps != null) gps.start();
 +}
 +
 +void onPause() {
 +  super.onPause();
 +}
 +</code>