Skip to content

Instantly share code, notes, and snippets.

View VladSumtsov's full-sized avatar

Vladyslav Sumtsov VladSumtsov

View GitHub Profile
@VladSumtsov
VladSumtsov / EditTextsOutOfRange
Created May 19, 2015 06:26
Hide keyboard, when click out of edit text.
/**
* @author "Sumtsov Vlad"
* idicates when user clicked on out of range of all activity edittexts
*/
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.view.MotionEvent;
@VladSumtsov
VladSumtsov / RevealCircleView.java
Created July 2, 2015 09:46
Reveal animation for using from float button
package com.corewillsoft.loansdeposits.ui.widget;
import android.animation.Animator;
import android.animation.Animator.AnimatorListener;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.Context;
import android.graphics.drawable.GradientDrawable;
import android.support.v7.internal.widget.ThemeUtils;
import android.util.AttributeSet;
@VladSumtsov
VladSumtsov / AutoResizeTextView.java
Created July 12, 2015 21:34
AutoResizeTextView
package com.corewillsoft.loansdeposits.ui.widget;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.RectF;
import android.os.Build;
import android.text.Layout.Alignment;
import android.text.StaticLayout;
import android.text.TextPaint;
@VladSumtsov
VladSumtsov / Example
Last active August 29, 2015 14:25
Parse regular string to spannable with specified icons. Icons in string. String with icons. Android.
TextView instruction;
Spannable span = new StringToSpannable(context, "Push the icon {R.drawable.icon_menu}")
.setTextColor(context.getResources().getColor(R.color.holo_blue))
.setTextStyle(Typeface.BOLD)
.toSpannable();
instruction.setText(span);
@VladSumtsov
VladSumtsov / EndlessScrollListener.java
Created August 27, 2015 08:11
Progress load for list view on scroll
package com.naughtystick.utils;
import android.view.View;
import android.widget.AbsListView;
import android.widget.AdapterView;
/**
* Created by dirong on 26.06.13.
*/
public abstract class EndlessScrollListener implements AbsListView.OnScrollListener, AbsListView.OnItemSelectedListener {
@VladSumtsov
VladSumtsov / OnDrawableClickListener.java
Created September 2, 2015 16:11
compound drawables click listener
package com.aliens.utils;
import android.view.MotionEvent;
import android.view.View;
import android.widget.TextView;
public class OnDrawableClickListener implements View.OnTouchListener {
private static final int LEFT_DRAWABLE = 0;
private static final int TOP_DRAWABLE = 1;
@VladSumtsov
VladSumtsov / CenterImageView.java
Last active September 17, 2015 08:06
Center image in the ImageView using matrix scheme.
package com.aliens.ui.widget;
import android.content.Context;
import android.graphics.Matrix;
import android.graphics.drawable.PictureDrawable;
import android.util.AttributeSet;
import android.widget.ImageView;
public class CenterImageView extends ImageView {
@VladSumtsov
VladSumtsov / Good IOS RTSP Player.md
Created January 4, 2016 15:28 — forked from oc2pcoj/Good IOS RTSP Player.md
iOS RTSP player for IP video cameras
@VladSumtsov
VladSumtsov / RecoderVideoSource.java
Created February 25, 2016 10:08
Fix for android 6
package com.ksy.recordlib.service.recoder;
import android.content.Context;
import android.hardware.Camera;
import android.media.MediaRecorder;
import android.os.Environment;
import android.util.Base64;
import android.util.Log;
import com.ksy.recordlib.service.core.CameraHelper;
@VladSumtsov
VladSumtsov / build.gradle
Last active May 5, 2016 08:17
Android. Gradle. Change the package of the classes. Manifest, customviews, custom prefereces - all these xmls will be changed too. Only thing you have todo, enable your proguard and add "-applymapping ./build/mapping.txt" to your proguard. Also change "somepackage" and "targetpackage" to yours
android.applicationVariants.all { variant ->
File mappingFile = file("${buildDir}/mapping.txt")
if (variant.getBuildType().isMinifyEnabled()) {
variant.mergeResources.doLast {
if (!mappingFile.exists()) mappingFile.createNewFile()
println "minify replacePackageInResources"
replaceResources(variant, "com.somepackage", "com.targetpackage")
replaceResources(variant, "com.somepackage2", "com.targetpackage2")
}