Skip to content

Instantly share code, notes, and snippets.

View webserveis's full-sized avatar

Webserveis webserveis

View GitHub Profile
@webserveis
webserveis / a0_readme.md
Last active April 25, 2017 11:10
Rotar un view paso a paso en Android

Usando recursos XML###

Dependiendo de flag_bol se rota de 0 a 180 o bien de 180 a 360

if (!flag_bol) {
    rotation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.rotate_0_to_180);
} else {
    rotation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.rotate_180_to_360);
}
@webserveis
webserveis / SimpleModel.java
Last active April 27, 2017 18:05
Crear un adaptador FlexibleAdapter para un RecyclerView en Android
public class SimpleModel extends AbstractFlexibleItem<SimpleModel.MyViewHolder> {
private String id;
private String title;
public SimpleModel(String id, String title) {
this.id = id;
this.title = title;
}
@webserveis
webserveis / DemoFragmentAdapter.java
Created April 27, 2017 20:16
Sincronizar ViewPager con BottomNavigationView
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.view.ViewGroup;
//FragmentStatePagerAdapter
//FragmentPagerAdapter
@webserveis
webserveis / audioManager.md
Last active May 15, 2017 16:47
AudioManager Tips

Tips de AudioManager de Android

Canales de Audio disponibles

  • AudioManager.STREAM_MUSIC
  • AudioManager.STREAM_RING
  • AudioManager.STREAM_ALARM
  • AudioManager.STREAM_NOTIFICATION
  • AudioManager.STREAM_VOICE_CALL
  • AudioManager.STREAM_SYSTEM

Basic ripple setup

Ripples contained within the view. android:background="?attr/selectableItemBackground" Ripples that extend beyond the view's bounds: android:background="?attr/selectableItemBackgroundBorderless"

@webserveis
webserveis / MainActivity.java
Last active May 29, 2017 11:48
Mapbox skills
package com.webserveis.app.kmlviewer;
import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.location.Location;
@webserveis
webserveis / readme.md
Created July 15, 2017 09:48
Tip Android N - Save Docs

Para guardar archivos en memoria del terminal con Android N

Especificar permisos en el Manifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

y crear el content provider

@webserveis
webserveis / contacts_namespaces.md
Last active December 4, 2020 10:00
namespaces contacts group

Nombres de espacios

Dependiendo de donde se encuentra el contacto, sim, dispositivo, cuenta email, whatsapp, telegram...

Contactos en el dispositivo

Contactos del telefono

  • Global com.android.localphone
  • Samsung Galaxy Alpha vnd.sec.contact.phone
  • Sony Xperia com.sonyericsson.localcontacts

Contactos en la sim

@webserveis
webserveis / readme.md
Last active November 10, 2017 22:19
Contactos CRUD Android

Inertar contacto a la memoria del telefono

Añadir contacto con intent

Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
intent.putExtra("finishActivityOnSaveCompleted", true);
startActivityForResult(intent, PICK_ADD_CONTACT);
@webserveis
webserveis / AsyncTask.md
Last active November 29, 2017 17:56
Base AsyncTask in Java Android

Ejemplo base de crear un tarea a segundo plano usando AsyncTask

Para ejecutar la tarea a segundo plano

        YouAsyncTask taskAsync = new YouAsyncTask();
        taskAsync.execute();

Para parar la tarea taskAsync.cancel(true) se debe modificar el código dentro del evento doInBackground para detectar la variable bandera para salir del bucle.