针对这些情况,我尝试在工具栏中为两种视图制作两种不同的颜色
我尝试了此解决方案https://stackoverflow.com/a/32724422/5927252 很多次,但是后来我意识到,当垂直异地等于0时, 一遍又一遍地调用方法
对于用户来说,保持应用栏折叠(在垂直异地= 0)是强制性的,所以我认为这会消耗更多的内存和处理器
任何建议,请
app_bar_layout_home.addOnOffsetChangedListener(object : AppBarLayout.OnOffsetChangedListener {
var isShow = true
var scrollRange = -1
override fun onOffsetChanged(appBarLayout: AppBarLayout, verticalOffset: Int) {
Log.e("tag", "Vertical offset = $verticalOffset") // at this line it's called over and over agian
if (scrollRange == -1) {
scrollRange = appBarLayout.totalScrollRange
}
if (scrollRange + verticalOffset == 0) {
collapsing_tb_layout_home.title = getString(R.string.browse_shops)
isShow = true
} else if (isShow) {
collapsing_tb_layout_home.title = " " //be careful a space between double quote is a must
isShow = false
}
}
})