til icon indicating copy to clipboard operation
til copied to clipboard

RxView.globalLayouts RxView.globalLayouts replace addOnGlobalLayoutListener

Open siliconprime-thanhduc opened this issue 6 years ago • 0 comments

Khi ta cần detect layout change trước đây ta thường dùng

myView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {
    }
});

Chúng ta có thể dùng RxView để làm việc này 1 cách dễ dàng hơn:

 RxView.globalLayouts(info_overlay)
        .map { info_overlay.visibility }
        .distinct()
        .subscribe { newVisibility ->
        }

hoặc

 RxView.layoutChanges(view)
            .distinct()
            .subscribe { newVisibility ->
            }

siliconprime-thanhduc avatar Jun 21 '19 09:06 siliconprime-thanhduc