Skip to content

Instantly share code, notes, and snippets.

@arvkmr
arvkmr / downloader.m
Created September 6, 2021 14:06
objective-c URLSession download class
//
// FileDownloader.m
//
#import <Foundation/Foundation.h>
#import "FileDownloader.h"
#import "NSMutableArray+QueueAdditions.h"
@interface FileDownloader()
@arvkmr
arvkmr / index.html
Created March 11, 2019 21:03
Chromecast receiver
<body>
<video id='vid' />
<script type="text/javascript"
src="//www.gstatic.com/cast/sdk/libs/receiver/2.0.0/cast_receiver.js">
</script>
<script type="text/javascript"
src="//www.gstatic.com/cast/sdk/libs/mediaplayer/1.0.0/media_player.js">
</script>
<script type="text/javascript">
@arvkmr
arvkmr / MyFragment.java
Created December 1, 2017 22:53
Recycler view with item click listener
public interface OnItemViewClickListener {
void onItemClick(View view, int position, AudioFile file);
}
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.ViewHolder> {
private List<Item> list;
private OnItemViewClickListener mItemClickListener;
public RecyclerAdapter(List<AudioFile> itemsData) {
@arvkmr
arvkmr / MainActivity.java
Created December 1, 2017 22:37
Fragment Animations that work with back button slide up and down
private void createFragment(){
FragmentTransaction transaction = mFragmentManager.beginTransaction();
transaction.setCustomAnimations(R.anim.slide_in_up, R.anim.slide_out_down, R.anim.slide_in_up,R.anim.slide_out_down);
transaction.addToBackStack(MyFragment.class.getSimpleName());
transaction.replace(R.id.baseLayout, fragment).commit();
}
@arvkmr
arvkmr / MainActivity.java
Created December 1, 2017 22:33
Display back navigation button on toolbar / actionbar android
//////////////////////////////////
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
setSupportActionBar(toolbar);
ActionBar ab = getSupportActionBar();
if ((ab != null) && (getSupportParentActivityIntent() != null)) {
ab.setDisplayHomeAsUpEnabled(true);
@arvkmr
arvkmr / MainActivity.java
Created December 1, 2017 22:27
Auto back management for fragments with child fragments up to 1 level depth
@Override
public void onBackPressed() {
FragmentManager fm = getSupportFragmentManager();
for (Fragment frag : fm.getFragments()) {
if (frag.isVisible()) {
FragmentManager childFm = frag.getChildFragmentManager();
if (childFm.getBackStackEntryCount() > 0) {
for (Fragment childfragnested: childFm.getFragments()) {
FragmentManager childFmNestManager = childfragnested.getFragmentManager();
if(childfragnested.isVisible()) {
@arvkmr
arvkmr / attr.xml
Last active December 1, 2017 22:23
Circular Progress view with visualizer clip art
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="CircularProgressView">
<attr name="cpv_progress" format="float" />
<attr name="cpv_maxProgress" format="float" />
<attr name="cpv_animDuration" format="integer" />
<attr name="cpv_animSwoopDuration" format="integer" />
<attr name="cpv_animSyncDuration" format="integer" />
<attr name="cpv_color" format="color"/>
<attr name="cpv_thickness" format="dimension"/>
@arvkmr
arvkmr / transparent_gradient_top_bottom.xml
Created December 1, 2017 22:12
Transparent gradient that from top to bottom of image android
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="90"
android:endColor="#00ffffff"
android:startColor="#aa000000"
android:centerColor="#00ffffff" />
<corners android:radius="0dp" />
@arvkmr
arvkmr / Round_white_button_drop_shadow.xml
Last active December 7, 2020 11:25
Android round white button with drop shadow
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<item>
<shape android:shape="oval">
<gradient
android:startColor="#FF000000"
android:endColor="#00000000"
@arvkmr
arvkmr / Photoshop Android Icons.jsx
Created December 1, 2017 21:17
Photoshop script to export icons for Android apps
// Updated version of script by Todd Linkner
// This script is for Photoshop CS6. It outputs Android icons of the
// xxxhdpi - ldpi from a source PSD at least 512px x 512px
/*
// BEGIN__HARVEST_EXCEPTION_ZSTRING
<javascriptresource>
<name>$$$/JavaScripts/OutputAndroidIcons/MenuAlt=Output Android Icons</name>
<category>mobile</category>