汉堡菜单旋转到新活动的箭头

我注意到,随着Android的最新Gmail更新,当您点击其中一封电子邮件时,会打开一个新的活动(我假设它不是片段,因为后面的箭头)。

但是,新活动的后退箭头不会像默认情况那样显示。 主界面中汉堡菜单旋转成animation中的箭头 (请参阅此处的video: http : //material-design.storage.googleapis.com/publish/material_v_3/material_ext_publish/0B3T7oTWa3HiFbFRfT196SWRyS2s/animation_delightfuldetails_wellcrafted.webm )

(注意:新打开的电子邮件可能是一个片段,因为工具栏没有更改,默认的新活动animation也没有播放。我不确定它是哪一个。)

澄清:我知道如何让汉堡菜单在按下/打开导航抽屉时变成箭头。 事实上,我故意禁用所说的animation,因为它违反了规范。 (参见这篇文章: http : //www.androidpolice.com/2014/10/30/google-turns-design-inconsistency-ten-latest-round-navigation-drawers/ )。 但是,我想知道, 在创建新的片段/活动时 ,无论Gmail可能使用哪一个, 都可以使用相同的animation

    如果你使用android.support.v7.app.ActionBarDrawerToggle它会自动animation。

    这太晚了,但我把它放在这里以便即将提出的问题。 Gmail应用程序会在片段中打开电子邮件。因为您仍然可以在此页面中使用汉堡包菜单。将汉堡包菜单图标更改为后退按钮我使用此代码并且工作正常。

      public void setupToolbarNavigation() { toggle.setDrawerIndicatorEnabled(false); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); toggle.setToolbarNavigationClickListener(new View.OnClickListener() { @Override public void onClick(View view) { onBackPressed(); reverseToolbar(); } }); } public void reverseToolbar() { getSupportActionBar().setDisplayHomeAsUpEnabled(false); getSupportActionBar().setHomeButtonEnabled(false); toggle.setDrawerIndicatorEnabled(true); toggle.setToolbarNavigationClickListener(null); } 

    toggle是ActionBarDrawerToggle的实例,您可以在活动中使用此代码启动它

     toggle = new ActionBarDrawerToggle( this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); drawer.setDrawerListener(toggle); toggle.syncState(); 

    用户单击时,reverseToolbar将工具栏后退图标更改为汉堡菜单图标。在您的活动中声明此方法并替换片段中的图标将此代码放入您的片段。 ((YourActivity)getActivity())。setupToolbarNavigation