Skip to content

Instantly share code, notes, and snippets.

@VAdaihiep
VAdaihiep / GMapV2Direction.java
Created January 14, 2015 08:02
Draw route and get other information like instruction, duration, distance,... async. Add loopj android http async to use this gist. Usage: gmapV2Direction.drawRoute(...., new OnDrawedRouteListener(){...});
import android.text.Html;
import android.util.Log;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.PolylineOptions;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.TextHttpResponseHandler;
import org.apache.http.Header;
@VAdaihiep
VAdaihiep / CursorToArrayListObject
Created January 19, 2015 11:16
Convert Cursor to ArrayList object
/**
* convert from cursor to arraylist of object
*
* @param <E>
*
* @param cursor
* @param class
* @return object
*/
public static <E> ArrayList<E> cursorToArrayListObject(Cursor cursor,
@VAdaihiep
VAdaihiep / MyListFragment.java
Created November 6, 2015 03:19
Keep state (data) in Fragment when replace fragment and go back
package vn.vadaihiep.keepstatefragment;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
@VAdaihiep
VAdaihiep / MyLog.java
Created November 11, 2015 04:37
Log auto turn off when build release
import android.util.Log;
import vn.mog.mygimi.BuildConfig;
/**
* Created by VAdaihiep on 11/11/2015.
*/
public class MyLog {
public static String DEFAULT_TAG = "VAdaihiep";
@VAdaihiep
VAdaihiep / TimeAgo.java
Created March 17, 2016 07:22
Calculate and return time ago
import java.util.Date;
import android.content.res.Resources;
public class TimeAgo {
public static String timeAgo(Date date) {
return timeAgo(date.getTime());
}
@VAdaihiep
VAdaihiep / OneSignalRestClient.java
Created March 18, 2016 04:04
Demo Custom Http Client from OneSignal SDK Android
/**
* Modified MIT License
*
* Copyright 2015 OneSignal
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
@VAdaihiep
VAdaihiep / LoadMoreListView.java
Last active March 29, 2016 14:15
Load more (paging) ListView in simplest way
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.AbsListView;
import android.widget.BaseAdapter;
import android.widget.HeaderViewListAdapter;
import android.widget.ListView;
public class LoadMoreListView extends ListView implements AbsListView.OnScrollListener {
private OnLoadMorListener onLoadMorListener;
@VAdaihiep
VAdaihiep / SnappingRecyclerView.java
Created October 29, 2015 08:26
SnappingRecyclerView horizontal in simplest way. Original version: http://stackoverflow.com/a/29171652/1393920
package vn.mog.mygimi.home;
import android.content.Context;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public final class SnappingRecyclerView extends RecyclerView {
@VAdaihiep
VAdaihiep / ImagePickerHelper.java
Last active June 17, 2016 10:59
Pick image or capture simplest way by custom 'com.kbeanie:image-chooser-library:1.5.8@aar'
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import com.kbeanie.imagechooser.api.ChooserType;
import com.kbeanie.imagechooser.api.ChosenImage;
import com.kbeanie.imagechooser.api.ChosenImages;
import com.kbeanie.imagechooser.api.ImageChooserListener;
import com.kbeanie.imagechooser.api.ImageChooserManager;
@VAdaihiep
VAdaihiep / MoneyFormatEditText.java
Created July 2, 2016 04:01
Format money. For an example: 10000 -> 10.000
public class MoneyFormatEditText extends EditText {
public MoneyFormatEditText(Context context) {
super(context);
setupTextWatcher();
}
public MoneyFormatEditText(Context context, AttributeSet attrs) {
super(context, attrs);
setupTextWatcher();
}