Skip to content

Instantly share code, notes, and snippets.

View pantos27's full-sized avatar
💅
coding makes my nails polish peel

Amir A pantos27

💅
coding makes my nails polish peel
View GitHub Profile
@pantos27
pantos27 / md5.java
Created June 4, 2017 07:31
hash a string with MD5 in Java with MessageDigest
final MessageDigest md5 = MessageDigest.getInstance("MD5");
final byte[] digest = md5.digest(text.getBytes());
String hash = new String(digest);
@pantos27
pantos27 / util.java
Created October 18, 2017 07:51
Android get resource uri
private Uri getResourceUri(Resources resources, int resourceID) {
return Uri.parse("android.resource://"+resources.getResourcePackageName(resourceID)+"/"+
resources.getResourceTypeName(resourceID) + '/'
+ resources.getResourceEntryName(resourceID) );
}
@pantos27
pantos27 / DefaultViewHolder.kt
Created December 15, 2017 19:27
DefaultViewHolder for a recycler view that handles most use cases needed. Props to this tutorial https://www.raywenderlich.com/172711/intermediate-recyclerview
package com.pantos27.someproject.recycler
import android.support.annotation.IdRes
import android.support.v7.widget.RecyclerView
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import java.util.*
@pantos27
pantos27 / loader.java
Created October 6, 2016 06:51
load picture with Picasso with a rotating loading animation plcaeholder
Picasso.with( context )
.load( your_path )
.error( R.drawable.ic_error )
.placeholder( R.drawable.progress_animation )
.into( image_view );
@pantos27
pantos27 / KotlinView.kt
Created July 9, 2019 19:26
Android custom view in Kotlin with all the constructor overloads
package com.pantos27.gist
class KotlinView @JvmOverloads constructor(
context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
) : View(context, attrs, defStyleAttr){
init{
//init stuff
}
}
package com.pantos27.gist
import android.os.Bundle
import androidx.fragment.app.DialogFragment
import androidx.fragment.app.FragmentManager
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.Window
import android.widget.FrameLayout
@pantos27
pantos27 / intercom.js
Created September 21, 2020 09:12
Helper methods to use Intercom in a type script project
//https://www.intercom.com/help/en/articles/170-integrate-intercom-in-a-single-page-app
const Intercom = {
init: (appId) => {
console.log("Intercom", "init", appId);
const w = window;
const ic = w.Intercom;
w.intercomSettings = {
horizontal_padding: 24,
vertical_padding: 24,
@pantos27
pantos27 / ConstraintLayoutWithDisableSupport.kt
Created November 17, 2020 16:24
ConstraintLayout with an option to grey out the entire content (disabled like)
package com.example.grayscaleexperiment
import android.content.Context
import android.graphics.Canvas
import android.graphics.ColorMatrix
import android.graphics.ColorMatrixColorFilter
import android.graphics.Paint
import android.util.AttributeSet
import androidx.constraintlayout.widget.ConstraintLayout
viewModel.viewState.observe(viewLifecycleOwner) { state ->
state takeIfSuccess {
// Here's the success state
} takeIfError {
// Here's the error state
}
}
@pantos27
pantos27 / deploy.yml
Created August 8, 2021 14:42
Github action to auto deploy to branch QA once a new version tag is created
name: deploy-to-qa
on:
workflow_dispatch:
push:
tags: [ 'v*' ]
jobs:
update_qa:
runs-on: ubuntu-latest
steps: