如何禁用工具栏淡入动画?

时间:2015-05-28 04:02:14

标签: android android-activity android-toolbar

有没有办法禁用fade-in / fade-out元素的ToolBar动画? 我找到了状态栏的解决方案:

getWindow().getEnterTransition().excludeTarget(android.R.id.statusBarBackground, true);

但我找不到ToolBar的类似修复方法。每次我加载一个新的Activity时,都会导致不需要的闪光。

编辑:

styles.xml

<resources xmlns:tools="http://schemas.android.com/tools">

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Status Bar Color -->
        <item name="android:colorPrimaryDark" tools:targetApi="21">@color/primary_4</item>
    </style>

    <!-- Toolbar Style -->
    <style name="toolbar">
        <item name="android:textColorPrimary">@color/primary_0</item>
        <item name="colorControlNormal">@color/primary_0</item>
        <item name="colorControlHighlight">@color/primary_3</item>
    </style>

</resources>

activity_main.xml &amp;的 activity_details.xml

 <android.support.v7.widget.Toolbar
        xmlns:app="http://schemas.android.com/apk/res-auto"
        app:theme="@style/toolbar"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minHeight="?android:attr/actionBarSize"
        android:background="@color/primary_4" />

1 个答案:

答案 0 :(得分:0)

高程动画持续时间值为R.integer.app_bar_elevation_anim_duration,默认为150

要避免动画,只需将以下内容放入res / values下的任何xml中即可:

<integer name="app_bar_elevation_anim_duration" tools:override="true">0</integer>