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 / RippleTextView.java
Created August 23, 2017 05:12
RippleTextView.java with RippleEffect.addRippleEffect() method
public RippleTextView(Context context) {
super(context);
getXMLAttributes(context, null);
RippleEffect.addRippleEffect(this, rippleEnabled,
backgroundColor, rippleColor);
}
public RippleTextView(Context context, AttributeSet attrs) {
super(context, attrs);
getXMLAttributes(context, attrs);
RippleEffect.addRippleEffect(this, rippleEnabled,
@adam-hurwitz
adam-hurwitz / recycler_headercell.xml
Last active March 27, 2020 20:01
rippleEnabled is false
<com.ebay.customrippleview.RippleTextView
android:id="@+id/course_index"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:gravity="center"
android:paddingBottom="4dp"
android:paddingTop="4dp"
android:text="@string/course_index"
android:textColor="@android:color/white"
@adam-hurwitz
adam-hurwitz / DBFlowQuery.kt
Last active August 24, 2017 04:07
Kotlin DBflow query one attribute
fun queryMemberStatus(id: String): Observable<List<Group>> {
return Observable.just(
SQLite.select(Group_Table.memberStatus)
.from(Group::class.java)
.where(Group_Table.id.`is`(id)).queryList())
}
@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>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:focusable="true"
android:src="@drawable/up_arrow"
android:theme="@style/SomeButtonTheme"/>
<style name="SomeButtonTheme" >
<item name="colorControlHighlight">@color/someColor</item>
</style>
@adam-hurwitz
adam-hurwitz / RxSchedulers.kt
Last active January 26, 2021 18:37
ODG - RxJava Schedulers Helper
fun <T> Observable<T>.IOAndMainSchedulers() =
this.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
fun <T> Observable<T>.IOAndIOSchedulers() =
this.subscribeOn(Schedulers.io()).observeOn(Schedulers.io())