IDIOMAS

Google-Translate-Chinese Google-Translate-Spanish to French Google-Translate-Spanish to German Google-Translate-Spanish to Japanese Google-Translate-Spanish to English Google-Translate-Spanish to Russian Google-Translate-Spanish to Portuguese Google-Translate-Spanish to Italian
Mostrando entradas con la etiqueta program. Mostrar todas las entradas
Mostrando entradas con la etiqueta program. Mostrar todas las entradas

sábado, 23 de enero de 2016

Como crear un ALERTDIALOG en Android Studio. Ejemplo con ITEMS clickables.

Hola, en esta entrada de blog de Trucos nos fijaremos en un ejemplo práctico de creación de un ALERTDIALOG. Son pequeñas pantallas auxiliare que nos aparecen para informarnos en distinpos procesos de una aplicación como por ejemplo si estas de acuerdo en continuar adelante con una opción, grabar datos recurrentes, aceptar o no una política de cookies, etc...

Una cosa muy útil que tienen los ALERTDIALOG son su facilidad de programación y la posibilidad de añadirle eventos en sus ITEMS.

Vamos a ver el ejemplo para tenerlo más claro.


- creamos un BUTTON en nuestro LAYOUT para llamar el ALERTDIALOG:




- Vamos a programar un evento onclick en JAVA al nuevo BUTTON y que llame al método que lo hemos llamado mostrar_alertdialog() :


public class MainActivity extends AppCompatActivity {

  
    Button button;

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

        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override            
                public void onClick(View v) {

                mostrar_alertdialog();
            }
        });
    }




- Ahora vomos a programar el método:


 final CharSequence[] items = { "A", "B", "C", "D" };

    AlertDialog.Builder builder = new AlertDialog
                                  .Builder(MainActivity.this);
    builder.setTitle("VOCALES");
    builder.setItems(items, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {

           
            dialog.dismiss();

        }
    }).show();
} //este método no tiene eventos en sus items




- Si lo que queremos es programar eventos en sus ITEMS, tenemos que utilizar un SWITCH y en cada CASE programar qué queremos hacer dentro del ONCLICK del ALERTDIALOG:


public void onClick(DialogInterface dialog, int item) {

    switch (item){

        case 0:
            // hacer algo
        case 1:
            // hacer algo
        case 2:
            // hacer algo
        case 3:
            // hacer algo            
}



Saludos a todo@s

miércoles, 14 de octubre de 2015

Como cargar las DEPENDENCIAS / LIBRERÍAS en Android Studio ( parte 2 )

Hay otro tipo de DEPENDENCIAS externas que podemos utilizar en nuestras aplicaciones, como la FFMPEG.

La manera de importarlas en Android Studio es la siguiente:

- Descargar la librería => arrastrar el archivo .JAR a la carpeta LIBS => Boton derecho sobre el .Jar  => Sincronizar


Paso a paso :







Se reconstruirá el proyecto y ya podremos trabajar con las librerías.




martes, 13 de octubre de 2015

Como cargar las DEPENDENCIAS / LIBRERÍAS en Android Studio ( parte 1 )

Para cargar las Dependencias Internas en Andoid Studio podemos hacerlo de dos maneras. La primera es ir a:

- PROJECT => boton derecho => OPEN MODULE SETTINGS => APP => DEPENDENCIES => " + " => selecionamos la Dependencia que nos interesa importar en nuestro projecto.


- Paso a paso;





















Nos pedirá dar al OK y automáticamente reconstruirá el proyecto








La otra manera, sería a través de GRADLE directamente:

- PROJECT => BUILD.GRADLE ( doble click ) => pestaña APP => DEPENDENCIES

Hay que recompilar y reconstruir el proyecto al modificar esta parte ( SYNC NOW )

- Paso a paso;




Dentro de DEPENDENCIES escribiremos : compile ' (librería a compilar) ' => sync




Saludos a tod@s , espero que sirva de ayuda y gracias por la visita :)


martes, 29 de septiembre de 2015

Como programar los WIDGETS de ZOOM en Android Studio: ZOOMCONTROLS y ZOOMBUTTON ( parte 1 )

Hola a tod@s, hoy quería hablar de los WIDGETS de ZOOM que nos proporciona ANDROID STUDIO y su correspondiente código JAVA.

En este primer ejemplo, veremos el ZOOMCONTROLS. Utilizaremos un IMAGEVIEW con la imagen que viene por defecto en ANDROID STUDIO. Podemos utilizar la que queramos. Sólo hay que insertar nuestro SRC.

- Arrastramos de la Palette el ZOOMCONTROLS sobre la ACTIVITY:





-Colocamos, a su gusto, el IMAGEVIEW y ZOOMCONTROLS:





- Este es el JAVA:

public class MainActivity extends AppCompatActivity {

    ImageView imageView;
    ZoomControls zoomControls;

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

        imageView=(ImageView)findViewById(R.id.imageView);

        zoomControls=(ZoomControls)findViewById(R.id.zoomControls);
        zoomControls.setOnZoomInClickListener(new View.OnClickListener() {
            @Override            public void onClick(View v) {

                float x = imageView.getScaleX();
                float y = imageView.getScaleY();

                imageView.setScaleX(x + 1);
                imageView.setScaleY(y + 1);
            }
        });

        zoomControls.setOnZoomOutClickListener(new View.OnClickListener() {
            @Override            public void onClick(View v) {

                float x = imageView.getScaleX();
                float y = imageView.getScaleY();

                imageView.setScaleX(x - 1);
                imageView.setScaleY(y - 1);
            }
        });


    }




Podemos analizar el código de la siguiente manera:

- Al zooControls le pasamos el listener SETONZOOMINCLICKLISTENER y el  SETONZOOMOUTCLICKLISTENER, que serán los encargados de augmentar o disminuir la imagen.

- Le decimos que obtenga ( GETSCALE ) el imageView los parámetros X y Y en pantalla.

- Le decimos al imageView que reproduzca ( SETSCALE ) las nuevas proporciones: las recogidas anteriormente y + o - el FLOAT que nos interese. Este FLOAT se puede modificar.


Compila y haz tus modificaciones.



Saludos, espero que sirva de ayuda. Gracias por al visita!

martes, 11 de agosto de 2015

Como convertir una imagen DRAWABLE a BITMAP para Android Studio

Código básico para transformar un archivo PNG ubicada en nuestra DRAWABLE del proyecto, a BITMAP:



Drawable drawable = context.getResouses().getDrawable(R.id.imageview);

Bitmap bitmap = BitmapFactory.decodeFile(getResouse(),R.drawable.nuestra_imagen);

drawable.setImageBitmap(bitmap);

jueves, 30 de julio de 2015

Nuevo código de política de COOKIES de GOOGLE ADS para usuarios europeos. Android Studio

Este es el código JAVA que hay que insertar en el MAINACTIVITY de nuestras APPS por la aplicación de la nueva normativa europea a lo que se refiere a datos Cookies de Ads de Google ( más información aquí: http://www.cookiechoices.org/ ):

- Importaciones ( IMPORT ):


        import android.content.SharedPreferences;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.widget.TextView;
import android.net.Uri;

- Dentro del MAINACTIVITY:

String message = "En este sitio se usan identificadores de dispositivo para personalizar el contenido y los anuncios, con el fin de ofrecer funciones de medios sociales y para analizar el tráfico. Además, compartimos estos identificadores y otra información sobre su dispositivo con nuestros partners de medios sociales, de publicidad y de análisis web. Más información"; // 
     String messageClickable = "Más información";
     String button_sms = "Entendido";
@Override
public void onStart() {
super.onStart();
final SharedPreferences settings = getSharedPreferences("localPreferences", MODE_PRIVATE);
if (settings.getBoolean("isFirstRun", true)) {
SpannableString messageSpannable = new SpannableString(message);
    ClickableSpan clickableSpan = new ClickableSpan() {
        @Override
        public void onClick(View widget) {
         Intent browserIntent = new Intent(Intent.ACTION_VIEW,                          Uri.parse("http://www.google.com/policies/privacy/"));
         startActivity(browserIntent);
        }
    };
    messageSpannable.setSpan(clickableSpan, message.indexOf(messageClickable), message.indexOf(messageClickable) + messageClickable.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
    AlertDialog alertDialog =  new AlertDialog.Builder(this).setTitle("Cookies")
      .setMessage(messageSpannable).setNeutralButton(button_sms, new AlertDialog.OnClickListener() {
          public void onClick(DialogInterface dialog, int which){
            settings.edit().putBoolean("isFirstRun", false).commit();
          }
        }).show();
    ((TextView)alertDialog.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance());
}
}


Quería dar las gracias a Yo Yo por su ayuda en el foro de Android Developers,

saludos espero que sirva de ayuda, gracias por la visita!

lunes, 29 de junio de 2015

Como cambiar el nombre de PAQUETE de una aplicación Android APK en Android Studio

Es hora de subir nuestra aplicación a Google Play y no sirve el nombre de paquete .EXAMPLE que viene por defecto cuando creamos el proyecto.
Antes de comenzar un proyecto en Android Studio, o cualquier otro programa de realización de aplicaciones Android, es muy importante poner un nombre al paquete distinto al que viene por defecto. Sinó, no será validada al subirla a Google Play:




Sinó hemos tenido en cuenta este primer paso y ya tenemos el proyecto terminado, podemos cambiarlo manualmente. Los pasos son:

-Botón derecho sobre el nombre de nuestra APP => OPEN MODULE SETTING => APP => FLAVOR => modificar APLICATION IP:








- Si lo que queréis es cambiar el nombre del paquete a toda la aplicación ( sub-carpetas ) sólo hay que seleccionar PACKET FILES en el menú raíz y: BOTÓN DERECHO sobre SRC --> REFRACTOR --> RENAME y os pedirá si lo que queréis es solo una carpeta o todas las seleccionadas --> TODAS. También hay que cambiarlo en el MANIFEST.


- Al dar OK, el proyecto se recontruirà automàticamente y listos :^]  




SALUDOS!!!

viernes, 26 de junio de 2015

Ejemplo para configurar y personalizar el estado de un botón ( button ) con imagenes PNG con código JAVA para Android Studio.

Si queremos que nuestro botón cambie de estado mediante imagenes en la interface, aquí os dejo en ejemplo para que lo compiléis en Android Studio.

-Tenéis que descargar las imágenes y colocarlas en la carpeta DRAWABLE con los nombres "click" y "click_previo"

https://cdn1.iconfinder.com/data/icons/business-cursor/512/click-512.png ( click_previo )

https://cdn2.iconfinder.com/data/icons/gestures-2/32/one-finger-double-tap-512.png ( click )


-Después, crear un archivo:



- Copia el siguiente código y pégalo en la nueva pestaña creada:

<item    android:state_enabled="false"    android:drawable="@drawable/click_previo" />
<item    android:state_pressed="true"    android:drawable="@drawable/click" />





-Crea un boton de 250dp x 250dp en tu LAYOUT:






- Y asignale el nuevo arcivo XML como BACKGROUND. Compila y acciona el botón.




Puedes compilar sin codigo JAVA y veras cómo cambia el estado del botón al accionarlo 



-Si lo que queremos es hacer en JAVA, aquí va el código dentro el ONCREATE:

btn=(Button)findViewById(R.id.id_boto);
btn.setBackgroundResource(R.drawable.click_previo);
btn.setOnTouchListener(new View.OnTouchListener() {
    @Override    public boolean onTouch(View v, MotionEvent event) {

        if (event.getAction() == MotionEvent.ACTION_DOWN) {
            btn.setBackgroundResource(R.drawable.click);
        }
        if (event.getAction() ==MotionEvent.AXIS_PRESSURE){
            btn.setBackgroundResource(R.drawable.click);
        }
        else {
            btn.setBackgroundResource(R.drawable.click_previo);
        }
        return false;
    }
});

Saludos!!!!

martes, 23 de junio de 2015

Sonidos y audios en Android Studio: clase MEDIAPLAYER

Esta clase se utiliza para la reproducción de audio y vídeo en Java. Entre sus pros, destaca la posibilidad de reproducir archivos de gran tamaño y en numerosos formatos. En contra, que consume muchos recursos del dispositivo y es recomendable lanzarla desde un nuevo THEARD o un RUNNABLE dentro de su ACTIVITY. Más información en Android Devolupers.


Este es el código básico para activar la clase desde un botón con su evento OnClick llamado Play:


Mediaplayer mediaplayer;
...

//dentro de onCreate
//el evento Onclick se programa en el XML del botón
public void Play ( View view ) {

mediaplayer = Mediaplayer.create(this, R.raw."nombre_archivo_audio");
mediaplayer.star();

}

-Si lo queremos es paralo, este es el código para un botón de stop con su evento llamado Stop:

public void Stop ( View view ) {

mediaplayer.stop();
mediaplayer.release();

}


Salu2!!


Como escoger qué ACTIVITY lanzar como primera pantalla de inicio de nuestra aplicación Android en Android Studio

Si queremos cambiar la ACTIVITY que se lanza como primera pantalla, donde es ACTIVITY_MAIN la que viene por defecto, sólo hay que:

- Buscar en nuestro ANDROID_MANIFEST:





- Y buscamos el INTENT-FILTER que es el filtro de intento para abrir el LAUNCHE ACTIVITY, o sea, lo que nos lanzará a la primera actividad cuando arrancamos la aplicación de cero:





-Moveremos este pequeño código hacia la ACTIVITY que queramos arrancar de inicio. Para este ejemplo en MAIN_ACTIVITY_2:



y listo!
compila y prueba :)

Saludos a tod@s!


domingo, 21 de junio de 2015

Como programar una SEEKBAR para controlar el volumen general desde nuetra aplicación Android en Android Studio.

Hola, hoy os mostraré cómo podemos controlar el flujo de STREAM de audio a través de una SEEKBAR sin utilizar los botones físicos del dispositivo.
Este ejemplo práctico estará compuesto por un archivo de audio de prueva, dos botones de PLAY y STOP y una SEEKBAR.
Para el XLM, os dejo el código más abajo. Si lo queréis hacer directamente vosotros :


- Crear la carpeta RAW ( http://trucosandroidstudio.blogspot.com.es/2015/03/como-crear-las-carpetas-raw-y-assets.html ), y arrastramos el audio de ejemplo:





- Creamos los botones PLAY y STOP, además de la SEEKBAR:



- XLM :


<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="PLAY"
        android:id="@+id/id_play"
        android:layout_above="@+id/id_volumen"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="42dp"
        android:onClick="Play" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="STOP"
        android:id="@+id/id_stop"
        android:layout_marginTop="38dp"
        android:layout_below="@+id/id_volumen"
        android:layout_alignLeft="@+id/id_play"
        android:layout_alignStart="@+id/id_play"
        android:onClick="Stop" />

    <SeekBar
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/id_volumen"
        android:layout_centerVertical="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:indeterminate="false" />


- Ahora el código JAVA:


Button btn_play;
Button btn_stop;
SeekBar sk_volumen;
AudioManager audioManager;
MediaPlayer mediaPlayer;

@Overrideprotected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    btn_play=(Button)findViewById(R.id.id_play);                 
    btn_play.setOnClickListener(new View.OnClickListener() {
        @Override        public void onClick(View v) {
            mediaPlayer=MediaPlayer.create(getApplication(),R.raw.audio_ejemplo);
            mediaPlayer.start();
            btn_play.setEnabled(false);
        }
    });

    btn_stop=(Button)findViewById(R.id.id_stop);
    btn_stop.setOnClickListener(new View.OnClickListener() {
        @Override        public void onClick(View v) {
            mediaPlayer.stop();
            mediaPlayer.release();
            btn_play.setEnabled(true);
        }
    });

    Volumen();
}

private void Volumen() {

    try {
        sk_volumen = (SeekBar)findViewById(R.id.id_volumen);
        audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
        sk_volumen.setMax(audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
        sk_volumen.setProgress(audioManager.getStreamVolume(AudioManager.STREAM_MUSIC));

        sk_volumen.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override            public void onStopTrackingTouch(SeekBar arg0) {
            }

            @Override            public void onStartTrackingTouch(SeekBar arg0) {
            }

            @Override            public void onProgressChanged(SeekBar arg0, int progress, boolean arg2) {
                audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, progress, 0);
            }
        });
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}



Compilar y probad :^]

Gracias, espero que sirva de ayuda, SALUDOS A TOD@S!

miércoles, 17 de junio de 2015

Como poner el icono png de nuestra aplicación en la ACTIONBAR (cabezera ), en Android Studio

Si queremos colocar un icono justo al lado del nombre de nuestra aplicación en la ActionBar de nuestra aplicación Android, debemos hacer lo siguiente;

- Dentro del ONCREATE escribir:

ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnable(true);
actionBar.setIcon(R.mipmap/drawable.nombre_icono);

no te olvides de importar: import android.supports.v7.app.ActionBar




Saludos a tod@s :^]

Como pasar o lanzar hacia una segunda pantalla o dirección web en nuestra aplicación Android en Android Studio. Ejemplo con un BUTTON

Si queremos pasar hacia otra pantalla o hacia una paguina web desde un botón, debemos llamar la clase INTENT de la siguiente forma:

public void onClick (View view ) {

            Intent intent = new Intent (this, activty.class);
            startActivity(intent) ;
}

Lo que esta en amarillo hay sustituirlo por el nonbre de nuestro evento ONCLICK del botón o witged al que se lo asignamos, y el otro por la ACTIVITY que queremos abrir ( se nos mostrara el XLM asociado a él ).

Para la paguina web:

            Intent intent = new Intent (Intent.ACTION_VIEW);
            intent.setData(Uri.parse("dirección web"));
            startActivity(intent) ;


Saludos a tod@s

Como hacer CAPTURA DE PANTALLA en nuestra Tablet Android. How do a SCREENSHOT in Tablet divace

Realizaremos captura de pantalla de nuestra Tablet Android, screenshot, utilizando apps de Google Play especializadas, o, mediante los botones físicos de nuestro dispositivo.

Para este último, el movimiento a realizar será el siguiente:

TECLA DE VOLUMEN ( - )   +  BOTON DE APAGADO  => A LA VEZ, hasta realizar captura


Veremos que hace un sonido de cámara ( dependiendo del dispositivo y su configuración ) y que la imagen se guarda en la carpeta IMAGENES del sistema. Seguramente nos avisara con un mensaje en la parte inferior de la pantalla.

Este método es para la gran mayoría de Tablets Android del mercado, pero puede que alguna marca tenga su propio protocolo.

Espero que ayude, saludos.



To do a screenshot in a Tablet divace, you have to press in the same time the folling protocol:

VOLUME KEY ( - ) + KEY ON/OFF in the same time

Como tener la pantalla completa FULL SCREEN para nuestra aplicación Android en Android Studio.

Si queremos tener la pantalla completa para nuestra aplicación Android puedes hacerla mediante el DIVACEDEFAULT.NOACTIONBAR.FULLSCREEN en tu MANIFEST








o puedes pegar esta linea de comando que dejo a continuación dentro ONCREATE de tu MAINACTIVITY:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//Saludos a tod@s!!!

domingo, 14 de junio de 2015

Como crear un BOTÓN REDONDO o redondeado en Android Studio. Ejemplo con código XML ( parte 1 )

Existen varias maneras de hacer un botón redondo o redondeado. Una de ellas, y la más fácil/práctica, es crea el archivo en una imagen PNG y después asignarlo a un IMAGEBUTTON en su BACKGROUND.

También podemos hacerlo mediante código XML directamente en Android Studio. Aquí estan los pasos para un ejemplo de botón redondeado.

- Debemos crear el archivo recurso XML. Botón derecho sobre RES => NEW => DRAWABLE FILE:




- Le asignamos un nombre en FILE NAME:




- En la casilla siguiente, cambiamos a SHAPE:




- Y se nos aparece el nuevo recurso en una pestaña para poderlo diseñarlo a nuestro gusto:




- Para este ejemplo, crearemos una imagen rectangular pero con las esquinar redondeadas ( que nos gustan tanto en Apple en sus interfaces :^]  ) 




- Dentro de la cápsula SHAPE escribimos ANDROID:SHAPE y selecionamos RECTANGLE y cerramos el comando:




- Abrimos nueva cápsula para los bordes. Aquí se nos aparecen distintos parámetros que podemos programar. De momento, CORNERS:




- Podemos escoger qué esquinas queremos modificar. Nosotros elegimos RADIUS:






- Tenemos las dimensiones por defecto que vienen en los dispositivos:




- Insertamos en DP la medida personalizada:




- Y cerramos la cápsula con ( > ) :




- Ahora el comando para darle solidez y poder visualizarlo. Abrimos con SOLID:




- ANDROID COLOR:




- Los colores por defecto se nos muestran:




- Para nuestro ejemplo, utilizaremos el blanco mate #ffffff , y cerramos:





- Para visualizar nuestro XML, a la derecha de nuestra interface, buscamos PREVIEW :




- Y nos aparecerá nuestro rectángulo:




Ahora sólo os quedaría utilizar el recurso como BACKGROUND / DRAWABLE en un IMAGEBUTTON, TEXTVIEW o un BUTTON.

Aquí tienes el código de un botón completamente redondo:

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <size android:width="50dp"        android:height="50dp"></size>
    <corners android:radius="25dp"></corners>
    <solid android:color="#e1ff4000"></solid>


</shape>



En la siguiente entrada de blog relacionado con botones XML, explicaremos como programar las diferentes faces por las que pasa y se nos muestra en la interface ( cambio de color, forma,etc... )



Saludos a tod@s y gracias por tu visita!