I had a problem getting the new fancy SwipeRefreshLayout from the appcompat lib to work with a custom listview, in this case the StickyListHeaders. Since the First child of the SwipeRefreshLayout should be either a ScrollView or a pure List, some workaround had to be done.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CustomRendererBuilder rendererBuilder = new CustomRendererBuilder(animationTimer) | |
RVRendererAdapter adapter = new RVRendererAdapter<>(rendererBuilder); | |
list.setAdapter(adapter); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@Override public void onDestroy() { | |
if (!animationSubscription.isUnsubscribed()) { | |
super.onDestroy(); | |
animationSubscription.unsubscribe(); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PublishSubject<Long> animationTimer; | |
Subscription animationSubscription; | |
animationSubscription = Observable.interval(1, TimeUnit.SECONDS) | |
.observeOn(AndroidSchedulers.mainThread()) | |
.subscribeOn(Schedulers.newThread()) | |
.subscribe(animationTimer = PublishSubject.create()); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@Bind(R.id.my_recyclerview) RecyclerView myList; | |
private PublishSubject<Long> animationTimer; | |
private Subscription animationSubscription; | |
public void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
ButterKnife.bind(this); | |
animationSubscription = Observable.interval(1, TimeUnit.SECONDS) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.sample.app.ui.schedulers; | |
import android.support.annotation.NonNull; | |
import rx.Scheduler; | |
/** | |
* Project: app | |
* | |
* Created by Jorge Garrido Oval on 01/12/2016. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.concurrent.TimeUnit; | |
import okhttp3.OkHttpClient; | |
import okhttp3.Request; | |
import okhttp3.Response; | |
import okhttp3.WebSocket; | |
import okhttp3.WebSocketListener; | |
import rx.Observable; | |
public class RxSocketConnection extends WebSocketListener { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Mediator { | |
public Observable<Auth> login(Login loginModel) { | |
if (loginStrategy.isAlreadyLogged()) | |
return Observable.from(authCache); | |
else | |
return repository.login(loginMapper.toRequest(loginModel)) | |
.map(entity -> authMapper.fromResponse(entity)); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package org.firezenk.utils; | |
import android.app.Activity; | |
import android.app.Application; | |
import android.content.Context; | |
import android.os.Bundle; | |
import android.os.Handler; | |
import android.util.Log; | |
import java.util.List; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.your.package; | |
import java.util.ArrayList; | |
import java.util.List; | |
/** | |
* MapperUtils Class | |
* | |
* Extracted from Facebook Android API by Jorge Garrido Oval <[email protected]> | |
* Use case: |