https://github.com/donglua/rxjavashowcase
几个RxJava的小例子
https://github.com/donglua/rxjavashowcase
Last synced: 10 months ago
JSON representation
几个RxJava的小例子
- Host: GitHub
- URL: https://github.com/donglua/rxjavashowcase
- Owner: donglua
- License: apache-2.0
- Created: 2015-09-04T01:31:40.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2015-12-25T13:43:53.000Z (over 10 years ago)
- Last Synced: 2025-03-22T18:15:56.334Z (about 1 year ago)
- Language: Java
- Homepage:
- Size: 79.1 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RxJavaShowcase
RxJava示例
* 统计连续点击
```java
mClickCountSubject.asObservable()
.buffer(mClickCountSubject.throttleWithTimeout(300, TimeUnit.MILLISECONDS))
.map(List::size)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(count -> {
Snackbar.make(mButton, "连续点击了" + count + "次", LENGTH_SHORT).show();
});
```
* 倒计时
```java
Observable.interval(1, TimeUnit.SECONDS)
.take(11)
.map(i -> {
return 10 - i; // i为0~10 11次
})
.observeOn(AndroidSchedulers.mainThread())
.subscribe(i -> {
btCountDown.setText(i == 0 ? "倒计时" : "" + i);
if (i == 0) btCountDown.setEnabled(true);
});
```