Skip to content

Instantly share code, notes, and snippets.

@Mun0n
Mun0n / CircleEdgeTreatment
Created March 20, 2020 17:16
Custom edge treatment to create a circle edge in a shape
import com.google.android.material.shape.EdgeTreatment
import com.google.android.material.shape.ShapePath
import kotlin.math.atan
import kotlin.math.sqrt
class CircleEdgeTreatment
(
private val radius: Float,
private val cradleRoundedCornerRadius: Float
) :
@Mun0n
Mun0n / GridSpacingItemDecoration.kt
Created February 21, 2019 12:09
GridSpacingItemDecoration in kotlin for Grid RecyclerViews
import android.graphics.Rect
import android.support.v7.widget.RecyclerView
import android.view.View
class GridSpacingItemDecoration(private val spanCount: Int, private val spacing: Int, private val includeEdge: Boolean) : RecyclerView.ItemDecoration() {
override fun getItemOffsets(outRect: Rect, view: View, parent: RecyclerView, state: RecyclerView.State) {
val position = parent.getChildAdapterPosition(view) // item position
val column = position % spanCount // item column
@Mun0n
Mun0n / ShareActivity
Created March 24, 2015 08:12
Android share image and text via intent with ShareActionProvider, using action button.
File shareFile;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_editor, menu);
ShareActionProvider shareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(menu.findItem(R.id.action_share));
shareActionProvider.setShareHistoryFileName(ShareActionProvider.DEFAULT_SHARE_HISTORY_FILE_NAME);
shareActionProvider.setShareIntent(getDefaultShareIntent());
shareActionProvider.setOnShareTargetSelectedListener(new ShareActionProvider.OnShareTargetSelectedListener() {