krystal9527
V2EX  ›  Android

MIUI 的天气城市切换过渡动画还挺好看的,有 MIUI 的同学吗?我想仿一个,能大致说一下原理吗?

  •  
  •   krystal9527 · Sep 11, 2020 · 15901 views
    This topic created in 2245 days ago, the information mentioned may be changed or developed.
    如题,切换过程动画:[动画视频链接]( https://cdn.nextto.top/2020/09/11/Screenrecorder-2020-09-11-16-01-12-21.mp4)
    17 replies  •  2020-09-13 15:46:22 +08:00
    also24
    also24
    Sep 11, 2020
    1
    看起来有点像 Shared Element Transition 的效果。

    https://developer.android.com/training/transitions/start-activity
    krystal9527
    krystal9527
    OP
    Sep 11, 2020
    2
    @also24 感觉不太像,通过慢放视频,先是点击子项那里出现一个带灰度的框,然后框的高度和宽度逐渐扩张到全屏幕,灰度也逐渐消失,最后动画完成。期间看上去没有共享元素。
    dying4death
    dying4death
    Sep 11, 2020
    3
    可以搜搜 activity 或 fragment 转场动画
    wvitas
    wvitas
    Sep 11, 2020
    4
    motionLayout 了解下
    ruby109
    ruby109
    Sep 11, 2020❤️1
    5
    这个感觉和 iOS 的 Appstore 的效果很像...
    daquandiao2
    daquandiao2
    Sep 11, 2020
    6
    录屏用的什么软件
    Yenben
    Yenben
    Sep 11, 2020
    7
    Circular Reveal
    krystal9527
    krystal9527
    OP
    Sep 11, 2020
    8
    @daquandiao2 MIUI 自带的录屏
    krystal9527
    krystal9527
    OP
    Sep 11, 2020
    9
    @Yenben 揭露动画不会对内容进行缩放
    krystal9527
    krystal9527
    OP
    Sep 11, 2020
    10
    @wvitas 我研究一下
    ezrealinxh
    ezrealinxh
    Sep 11, 2020
    11
    非要一模一样的话自定义 transition 就行
    chenyu8674
    chenyu8674
    Sep 11, 2020
    12
    逐帧播放会发现其实是两段动画,原 View 的点击和全屏 View 的放大
    分界点在 01:429
    krystal9527
    krystal9527
    OP
    Sep 11, 2020
    13
    @wvitas 这个可行,多谢了👍
    cyberpoint
    cyberpoint
    Sep 11, 2020
    14
    好像挺简单的,加个过度就解决了
    IGJacklove
    IGJacklove
    Sep 12, 2020 via Android
    15
    这好像没啥难的吧。。。flutter 写这种路由动画很简单的,用 hero 可以做到那个框一直显示然后过度到下一个页面。
    https://github.com/blaugold/circular_clip_route

    可以看一下这种效果,想要圆还是方形改一下 clip 就可以了。
    fansangg
    fansangg
    Sep 12, 2020
    16
    krystal9527
    krystal9527
    OP
    Sep 13, 2020
    17
    @fansangg 这个也不错,但是不完全符合图示 MIUI 的动画。我用 Motion Layout 实现了一个 demo,如果你感兴趣可以[看看]( https://github.com/ijkzen/MotionLayoutDemo.git)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2053 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 16:25 · PVG 00:25 · LAX 08:25 · JFK 11:25
    ♥ Do have faith in what you're doing.