Skip to content

Instantly share code, notes, and snippets.

View adam-hurwitz's full-sized avatar

Adam Hurwitz adam-hurwitz

View GitHub Profile
@adam-hurwitz
adam-hurwitz / ripple.xml
Created August 24, 2017 19:25
API level 21
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/"rippleColorName">
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="1dp" />
<solid android:color="@color/buttonColorName" />
<corners android:radius="100dp" /> <!--create circle background-->
</shape>
</item>
@adam-hurwitz
adam-hurwitz / ripple.xml
Created August 24, 2017 19:26
API pre 21
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/btn_pressed"/>
<item android:drawable="@drawable/btn_normal"/>
</selector>
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<padding
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp"/>
<corners android:radius="3dp"/>
<solid android:color="@color/btnNormalColorName"/>
</shape>
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<padding
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp"/>
<corners android:radius="3dp"/>
<solid android:color="@color/btnPressedColorName"/>
</shape>
/**
* Factory for creating a tracker and associated graphic to be associated with a new barcode. The
* multi-processor uses this factory to create barcode trackers as needed -- one for each barcode.
*/
public class BarcodeTrackerFactory implements MultiProcessor.Factory<Barcode> {
private GraphicOverlay<BarcodeGraphic> graphicOverlay;
Context context;
public BarcodeTrackerFactory(GraphicOverlay<BarcodeGraphic> graphicOverlay,
Context context) {
package com.scannerapp.ahurwitz.scannerapp.Camera;
import android.content.Context;
import android.support.annotation.UiThread;
import com.google.android.gms.vision.Detector;
import com.google.android.gms.vision.Tracker;
import com.google.android.gms.vision.barcode.Barcode;
/**
import java.util.Arrays;
public class HashFunction {
String[] theArray;
int arraySize;
int itemsInArray = 0;
public static void main(String[] args) {
VisibleRegion vr = map.getProjection().getVisibleRegion();
double left = vr.latLngBounds.southwest.longitude;
double top = vr.latLngBounds.northeast.latitude;
double right = vr.latLngBounds.northeast.longitude;
double bottom = vr.latLngBounds.southwest.latitude;
double center = map.getCameraPosition().target.longitude;
Location leftCenterLoc = new Location("left");
leftCenterLoc.setLatitude(map.getCameraPosition().target.latitude);
leftCenterLoc.setLongitude(vr.latLngBounds.southwest.longitude);
<animated-vector xmlns:aapt="http://schemas.android.com/aapt"
xmlns:android="http://schemas.android.com/apk/res/android">
<aapt:attr name="android:drawable">
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="@dimen/radius_circle"
android:height="@dimen/radius_circle"
android:viewportHeight="262.0"
android:viewportWidth="262.0">
@adam-hurwitz
adam-hurwitz / FireStorePagingAdapter.kt
Created August 8, 2018 21:16
FirestorePagingAdapter
private fun initializeFirestoreAdapter() {
val config: PagedList.Config = PagedList.Config.Builder()
.setEnablePlaceholders(true)
.setPrefetchDistance(PREFETCH_DISTANCE)
.setPageSize(PAGE_SIZE)
.build()
val options: FirestorePagingOptions<Content> = FirestorePagingOptions.Builder<Content>()
.setLifecycleOwner(this)