小编典典

ActionBar或ActionBarSherlock-平滑隐藏/显示ActionBar

java

我正在使用ActionBarSherlock,并尝试使用以下方法隐藏/显示全屏图像的ActionBar:

getSupportActionBar.hide();

getSupportActionBar.show();

但这确实是跳跃和尴尬的。有没有办法使它更平滑,或者应用平移/不透明动画?

在进一步检查ABS源并观察其行为后,似乎至少定义了最少的动画。对于标准ActionBar,不能说相同的话。

为了完整起见,这是我从ImageView.click调用的相关代码:

if( shouldRender )
{
  . . .

  getSupportActionBar().hide();

  getWindow().addFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN );
}
else
{
  . . .

  getSupportActionBar().show();

  getWindow().clearFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN );
}

值得注意的是,标志的设置/清除也会引起跳转,但是跳转不那么明显,所以我将在以后解决它,如果有的话。

编辑:
(通过ABS的创造者)似乎状态,它在本地的ActionBar是不可能的。我想我只可以编辑两个XML文件来定义他的动画,但这不会给我带来完整的平台渗透力。


阅读 144

收藏
2020-11-13

共1个答案

小编典典

我使用叠加式ActionBar

 requestWindowFeature(com.actionbarsherlock.view.Window.FEATURE_ACTION_BAR_OVERL‌​AY);

调用show()/ 时,它不显示动画hide()

2020-11-13