【问题标题】:CardView animation: raise and expand on click?CardView 动画:点击时抬起并展开?
【发布时间】:2015-02-28 11:18:53
【问题描述】:

我目前正在创建我的第一个 android 应用程序,并且想知道如何设置卡片视图以提升然后展开为更大的矩形,从而显示一个新片段?

编辑:(无论原始卡片位于何处,新片段都会填满屏幕的中心三分之一)

【问题讨论】:

    标签: android animation expand raise


    【解决方案1】:

    真实运动

    有形的表面不会像跳入一样突然出现 电影;他们移动到位有助于集中注意力,建立 空间关系并保持连续性。材料回应 触摸以确认您的交互,所有更改都从 你的接触点。所有的动作都是有意义和亲密的,有助于 用户的理解。

    Activity + 片段过渡

    通过声明跨两个屏幕通用的“共享元素”,您 可以创建两个状态之间的平滑过渡。

    album_grid.xml
    …
        <ImageView
            …
            android:transitionName="@string/transition_album_cover" />
    album_details.xml
    …
        <ImageView
            …
            android:transitionName="@string/transition_album_cover" />
    
    AlbumActivity.java
    Intent intent = new Intent();
    String transitionName = getString(R.string.transition_album_cover);
    …
    ActivityOptionsCompat options =
    ActivityOptionsCompat.makeSceneTransitionAnimation(activity,
        albumCoverImageView,   // The view which starts the transition
        transitionName    // The transitionName of the view we’re transitioning to
        );
    ActivityCompat.startActivity(activity, intent, options.toBundle());
    

    这里我们在两个屏幕中定义了相同的transitionName。启动时 新的 Activity 和这个过渡是自动动画的。在 除了共享元素,您现在还可以编排输入和 现有元素。

    来源:Implementing Material Design

    【讨论】:

    • 我们可以用卡片视图来做吗?
    猜你喜欢
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 2018-04-23
    • 2018-11-28
    • 2016-07-03
    相关资源
    最近更新 更多