Skip to content

Instantly share code, notes, and snippets.

View nectarine's full-sized avatar

Changyeop Kim nectarine

  • UPRISE, Inc.
  • Seoul, South Korea
View GitHub Profile
@nectarine
nectarine / ElementViewModel.kt
Last active July 3, 2017 10:05
Android MVVM with Custom State Widget
abstract class ElementViewModel<T : Element> : RxViewModel() {
lateinit var element: T
protected fun initialize(element: T) {
this.element = element
isOn.set(element.isOn())
onStatusUpdate()
}
class EmailSignInViewModel : GuestRxViewModel(), EmailSignInContract.ViewModel {
override fun onEmailUpdate(input: Editable) {
val email = input.toString()
if (InputUtils.isValidEmail(email)) {
emailError.set("")
} else {
emailError.set(getApplicationString(R.string.auth_error_invalid_email))
}
emailSubject.onNext(email)