Skip to content

Instantly share code, notes, and snippets.

import rx.Observable;
import rx.subjects.PublishSubject;
public class Property<T> {
private T value;
private PublishSubject<T> property;
public Property() {
property = PublishSubject.create();
dlew / gist:8c754d9b5e5b145d23ca
Created Mar 9, 2015
Wrapping with transformers
View gist:8c754d9b5e5b145d23ca
private CompositeSubscription subscriptions = new CompositeSubscription();
public <T> Observable<T> subscribe(Observable<T> observable) {
return observable;
public <T> Observable.Transformer<T, T> subscribeTransformer() {
return new Observable.Transformer<T, T>() {
dlew / build.gradle
Last active Sep 11, 2019
Sample for Crashlytics
View build.gradle
// Follow the five numbered instructions for setting up Crashlytics
buildscript {
repositories {
maven { url '' }
// 1. Add the Crashlytics Maven repository to your build script.
maven { url '' }
dependencies {
dlew /
Created Nov 26, 2014
import android.content.Context;
import android.os.Bundle;
import rx.Observable;
import rx.subjects.BehaviorSubject;
import java.util.Map;
dlew / themes-debug.xml
Last active Aug 9, 2021
With the new theming in AppCompat, a lot of assets are tinted automatically for you via theme attributes. That has often led me to wonder "where the hell did this color come from?" You can replace your normal theme with this debug theme to help figure out the source of that color.
View themes-debug.xml
<!-- You can change the parent around to whatever you normally use -->
<style name="DebugColors" parent="Theme.AppCompat">
<!-- System colors -->
<item name="android:windowBackground">@color/__debugWindowBackground</item>
<item name="android:colorPressedHighlight">#FF4400</item>
<item name="android:colorLongPressedHighlight">#FF0044</item>
<item name="android:colorFocusedHighlight">#44FF00</item>
<item name="android:colorActivatedHighlight">#00FF44</item>
dlew / gist:b808900466685749f1bd
Last active Aug 29, 2015
Everything you need to do to change the color of the title of your ActionBar.
View gist:b808900466685749f1bd
<style name="MyTheme" parent="Theme.AppCompat.Light">
<item name="actionBarStyle">@style/MyActionBarStyle</item>
<style name="MyActionBarStyle" parent="Widget.AppCompat.ActionBar.Solid">
<item name="titleTextStyle">@style/MyTitleTextStyle</item>
<style name="MyTitleTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">
<item name="android:textColor">#000000</item>
dlew / gist:f7026c13fa09fe6df0d6
Last active Aug 29, 2015
Why I hate mixing implicit/explicit styles
View gist:f7026c13fa09fe6df0d6
<style name="Widget" />

<style name="Widget.Button" />

<style name="Widget.Button.Alternative" parent="@android:style/SomeOtherStyle />

All buttons either use Widget.Button or Widget.Button.Alternative.

I decide to change something in Widget.Button.

View gist:680175f035de85af3e29
RetrofitService.doTheThing(params) // Your typical API call
.subscribeOn( // Execute API call on IO thread
.observeOn(AndroidSchedulers.mainThread()) // Execute observers on Android's main thread
.subscribe(results -> handle(results)); // Handling the results of the API call
View gist:6554307
public class LazyListManagerUtils {
public static <T> List<T> add(List<T> list, T item) {
if (list == null) {
list = new ArrayList<T>();
else if (!list.contains(item)) {
dlew / gist:3100299
Created Jul 12, 2012
Easier findVewById()
View gist:3100299
public static <T extends View> T findView(Activity activity, int id) {
return (T) activity.findViewById(id);
public static <T extends View> T findView(View view, int id) {
return (T) view.findViewById(id);