小编Hoh*_*eim的帖子

RxJava2发布

有什么区别

ObservableTransformer {
    Observable.merge(
        it.ofType(x).compose(transformerherex),
        it.ofType(y).compose(transformerherey)
    )
}
Run Code Online (Sandbox Code Playgroud)

ObservableTransformer {
    it.publish{ shared ->
        Observable.merge(
            shared.ofType(x).compose(transformerherex),
            shared.ofType(y).compose(transformerherey)
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

当我使用这两个运行我的代码时,我得到了相同的结果.发布做了什么.

android kotlin rx-java2

6
推荐指数
1
解决办法
1329
查看次数

SliverPersistentHeaderDelegate 未完全折叠

我很难制作自定义折叠工具栏,下面附有正常情况下的视频。

没问题,但不够敏捷

然后这是不当行为的屏幕记录,大多数时候都会发生这种情况。

没有塌陷

除了滚动不是那么快之外,您会在第二个视频中看到顶部的条子没有完全折叠。

您对提高应用程序的性能有什么建议以及解决错误的方法吗?

这是我的代码SliverPersistentHeaderDelegate

class DashboardHeaderPersistentDelegate extends SliverPersistentHeaderDelegate {

...

  @override
  Widget build(
      BuildContext context, double shrinkOffset, bool overlapsContent) {

    double shrinkPercentage = min(1, shrinkOffset / (maxExtent - minExtent));
    double titleTopMargin = titleCollapsedTopPadding +
        (titleExpandedTopPadding - titleCollapsedTopPadding) *
            (1 - shrinkPercentage);
    double titleFontSize = titleCollapsedFontSize +
        (titleExpandedFontSize - titleCollapsedFontSize) *
            (1 - shrinkPercentage);
    double infoWidgetHeight = minExtent +
        (maxExtent - minExtent) -
        shrinkOffset -
        titleTopMargin -
        titleFontSize -
        44;
    double collapasedInfoOpacity = max(0, shrinkPercentage-.7)/.3;

    return Material(
      elevation: 0, …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-sliver flutter-layout sliverappbar

6
推荐指数
1
解决办法
6703
查看次数