Skip to content

Instantly share code, notes, and snippets.

View ultraon's full-sized avatar

Vitalii ultraon

View GitHub Profile
@ultraon
ultraon / HorizontalOverScrollView.java
Created December 9, 2016 18:43
Bouncable HorizontalScrollView
public class HorizontalOverScrollView extends HorizontalScrollView {
private static final int WIDTH_DEVIDER_OVERSCROLL_DISTANCE = 3;
private TimeInterpolator mInterpolator;
private int mMaxOverscrollDistance;
private int mAnimTime;
private long mStartTime;
/**
* Instantiates {@link HorizontalOverScrollView} object.
@ultraon
ultraon / ChildrenViewStateHelper.java
Last active August 3, 2016 07:33
Example of ChildrenViewStateHelper for saving view states with the same id in ViewGroup
package mypackage.presentation.utils.view;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.util.SparseArray;
import android.view.ViewGroup;
public class ChildrenViewStateHelper {
@ultraon
ultraon / HandledClickUrlTextView.java
Last active June 15, 2016 13:56
The HandledClickUrlTextView is an extended TextView for supporting custom handler for link clicks
package presentation.view;
import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.content.Context;
import android.os.Build;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
@ultraon
ultraon / ReflectionUtils.java
Last active June 15, 2016 13:56
The reflection utils for convenient working with java reflection operations
package utils;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.lang.reflect.Field;
/**
* The utility class with reflection convenient methods.
*/
@ultraon
ultraon / build.gradle
Last active March 30, 2016 11:01
Example for building android library module (in project) with custom variant
//snippet from library module
android {
defaultPublishConfig "productionRelease"
publishNonDefault true
productFlavors {
alpha {
}
production {
}