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

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!!!