小编Amb*_*mbi的帖子

Jackson 忽略没有自定义序列化程序的空对象“{}”

我想将包含另一个具有空值的 POJO 的 POJO 序列化为 JSON。

例如,给定:

class School {
  String name;
  Room room;
}

class Room {
  String name;
}

Room room = new Room();
School school = new School("name");
school.room = room;
Run Code Online (Sandbox Code Playgroud)

序列化后它看起来像这样

{ "name": "name", "room": {}}

{}如果类的所有字段也都是空的,是否可以排除空对象?理想情况下,无需编写自定义代码即可对每个对象进行全局处理。

java json jackson

11
推荐指数
2
解决办法
3791
查看次数

检测Android SurfaceView是否正在绘制/移动

我正在使用libvlc和android app来播放网络流; 本机代码在surfaceview上绘制图像.

让我们假设视频停止,我无法访问本机代码,如何检测SurfaceView是否仍在移动(视频是否未冻结)?

我试过getViewTreeObserver().addOnDrawListener(); 和getViewTreeObserver().addOnPreDrawListener(); 但它们没有我想要的效果.

谢谢

android vlc surfaceview

7
推荐指数
1
解决办法
1386
查看次数

动态动画BottomSheet peekHeight

有没有人设法动画BottomSheet peekHeight?

我目前正在做以下事情:

        bottom_sheet?.let {
            val behavior = BottomSheetBehavior.from(bottom_sheet)
            behavior.peekHeight = 500
            behavior.state = BottomSheetBehavior.STATE_COLLAPSED
        }
Run Code Online (Sandbox Code Playgroud)

该bottomsheet偷看高度改变,但我想有一个动画,当你从改变国家像STATE_COLLAPSEDSTATE_EXPANDED.

animation android kotlin bottom-sheet

6
推荐指数
2
解决办法
1462
查看次数

RXJava 忽略错误并继续链

我有一个 RXJava 链,可以抛出错误。我希望链继续并忽略错误并到达订阅,仅针对某些特定错误。

例如在这段代码中

authDataManager
                    .getUserAccessToken(username, password)
                    .subscribeOn(Schedulers.io())
                    .doOnNext({
                        authDataManager.saveUserAccessToken(it)
                    })
                    .flatMap {
                        appDataManager.getStations()
                    }
                    .doOnNext({
                        appDataManager.persistStations(it)
                    })
                    .flatMap {
                        appDataManager.getDriverInformation()
                    }
                    .doOnNext({
                        appDataManager.persistDriverInformation(it)
                    })
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribe(
                            {
                                onLoginSuccess()
                            },
                            {
                                onLoginFailure(it)
                            }
                    )
Run Code Online (Sandbox Code Playgroud)

如果appDataManager.getStations()抛出错误,我仍然想继续并到达该onLoginSuccess()方法。

但是如果getUserAccessToken(username, password)失败,onLoginFailure应该调用。

我尝试在平面图之后及其内部添加 onErrorResumeNext() 和 onExceptionResumeNext() ,但如果我这样做,链就会退出并且不会继续并到达订阅

java android kotlin rx-java

4
推荐指数
1
解决办法
7855
查看次数

标签 统计

android ×3

java ×2

kotlin ×2

animation ×1

bottom-sheet ×1

jackson ×1

json ×1

rx-java ×1

surfaceview ×1

vlc ×1