Android,确定何时打开/关闭collapsingtoolbar

时间:2015-08-18 08:30:57

标签: android material-design

我有一点问题而且可以处理它。 我正在使用折叠工具栏制作Android应用。所以,当它打开时,我会把一些可绘制的图像做一些渐变,像这样,我也可以使用白色图像,但仍然可以看到后面的箭头。 问题是当我关闭折叠工具栏时,因为工具栏会保持渐变产生不良影响。 所以我想,如果我能以编程方式知道它何时打开或关闭,我也可以在关闭时更改工具栏颜色。这就是问题所在,我无法找到一个能够返回此问题的方法。 那么有没有选择去了解它?知道它何时崩溃。

非常感谢你!

2 个答案:

答案 0 :(得分:1)

查看AppBarLayout.OnOffsetChangedListener

它有垂直偏移参数,您可以使用它来确定它是否已折叠。

编辑:实施onOffsetChanged方法:

if (collapsingToolbarLayout.getHeight() + verticalOffset < 2 * ViewCompat.getMinimumHeight(collapsingToolbarLayout)) {
    //closed
} else {
    //opened
}

答案 1 :(得分:0)

您已在活动中实施AppBarLayout.OnOffsetChangedListener。并且在侦听器中有方法onOffsetChanged(最终的AppBarLayout appBarLayout,最终的int偏移量)。 您可以使用offset的值来确定它是否已折叠。

   if (offset == 0) {
    // completely opened state
    } else {
      // 
    }

您还可以通过方法内的以下检查来检查它是否完全折叠:

 if (collapsingToolbar.getHeight() + offset < 2 *ViewCompat.getMinimumHeight(collapsingToolbar){
  //completely collapsed state
  }