likaci
V2EX  ›  问与答

Fragment 进入和移除时,怎样平滑移动其他 View ?

  •  
  •   likaci · Jan 22, 2015 · 2496 views
    This topic created in 4176 days ago, the information mentioned may be changed or developed.
    想要做出类似谷歌地图的效果,现在的区别就是
    Fragment载入时,上方的View会直接**跳**到指定位置。退出时也会直接跳到下面。
    除了直接用动画控制Fragment Fram的高度还有什么方法?

    谷歌地图效果,定位按钮平滑移动:
    
    现在的效果,定位按钮会跳:
    

    谢谢
    5 replies    2015-01-24 10:22:31 +08:00
    kyze8439690
        1
    kyze8439690  
       Jan 22, 2015   ❤️ 1
    onCreateAnimator
    likaci
        2
    likaci  
    OP
       Jan 23, 2015
    @kyze8439690
    谢谢指点,现在基本实现了。但是感觉不理想
    ---
    白色的圆形按钮是fragment 外的view
    现在实现思路是,fragment resume的时候,获取view高度。
    调用 Activity中方法,动画移动上面白色按钮。
    ---
    不知道有没什么别的思路 :D
    kyze8439690
        3
    kyze8439690  
       Jan 23, 2015   ❤️ 1
    获取高度用view.getViewTreeObserver().setOnGlobalLayoutListener(),在里面getHeight(),记得remove
    kyze8439690
        4
    kyze8439690  
       Jan 23, 2015   ❤️ 1
    如果卡顿,记得setLayer HARDWARE,animation结束的时候set回去
    likaci
        5
    likaci  
    OP
       Jan 24, 2015
    @kyze8439690 嗯,现在就是这种形式,但总感觉这样Fragment和Activity纠缠着,用着不爽。
    再次感谢
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2531 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:58 · PVG 23:58 · LAX 08:58 · JFK 11:58
    ♥ Do have faith in what you're doing.