7

我想从一个对话框创建一个“最大化”效果到我的完整活动中,所以我希望打开动画显示活动从一个盒子扩展到全尺寸。

自 Jelly Bean 以来,股票启动器已经这样做了(按下应用程序快捷方式将从该图标的位置放大应用程序,并且最近的应用程序菜单从 ICS 开始就已经这样做了。

4

2 回答 2

2

弄清楚了!

Bundle options = ActivityOptionsCompat.makeScaleUpAnimation(
    findViewById(android.R.id.content),
    findViewById(android.R.id.content).getLeft(),
    findViewById(android.R.id.content).getTop(),
    findViewById(android.R.id.content).getWidth(),
    findViewById(android.R.id.content).getHeight()).toBundle();
    startActivity(intent, options);

它仅适用于 API 16 及更高版本,因此请检查它并将普通旧startActivity版本用于旧版本。

于 2013-10-02T08:03:09.013 回答
0

从左下角最大化将是这样的。

<?xml version="1.0" encoding="utf-8"?>
<set
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="true"
    android:duration="2000">

    <scale
        android:fromXScale="0"
        android:toXScale="1"
        android:fromYScale="0"
        android:toYScale="1"
        android:pivotX="0%"
        android:pivotY="100%"/>

    <translate android:fromYDelta="100%p"
               android:toYDelta="0%p"/>
</set>
于 2013-10-02T10:06:24.497 回答