【问题标题】:How to modify behaviour of Imageview in coordinate layout如何在坐标布局中修改 Imageview 的行为
【发布时间】:2017-08-12 17:16:33
【问题描述】:

我希望当折叠工具栏达到一定高度时我的 imageView 消失

就像link 一样,FAB 在工具栏折叠时消失(标题下的 gif 折叠工具栏和应用程序栏,在提供的链接中)我希望在 imageview 而不是 FAB 上出现这种行为

【问题讨论】:

  • 你可以查看stackoverflow.com/questions/43162616/…这个帖子
  • 您必须发布一些代码让我们知道您正在做什么来解决上述问题,以便我们指出您哪里出错了。顺便说一句,如果你想从头开始,你可以试试这个:yaronvazana.com/2015/12/28/…
  • 喜欢这个链接:androidauthority.com/… FAB 在工具栏折叠时消失(标题下的 gif 折叠工具栏和应用程序栏,在提供的链接中)我希望在 imageview 而不是 FAB 上出现这种行为

标签: java android android-coordinatorlayout android-collapsingtoolbarlayout android-appbarlayout


【解决方案1】:

FAB 有一个自定义的 Behavior 类。

对于您的 ImageView,您可以在 AppBarLayout 上使用监听器,例如:

在你的活动中:

AppBarLayout appbarLayout = (AppBarLayout) findViewById(R.id.appbarlayoutid);
appbarLayout.addOnOffsetChangedListener( new AppBarLayout.OnOffsetChangedListener() {
        @Override
        public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) {
            float percentage = (appBarLayout.getTotalScrollRange()-(float)Math.abs(verticalOffset))/appBarLayout.getTotalScrollRange();

            if(percentage < 0.3) {
                 mImageView.setVisibility(View.GONE)
            } else if(percentage > 0.7) {
                 mImageView.setVisibility(View.VISIBLE)
            }
    });

希望这会有所帮助。

【讨论】:

  • 所以我们也不能为 imageview 创建自定义行为?
  • 据我所知,imageview 没有类似的类,但如果我正确理解了您的问题,上面的代码应该可以工作。告诉我。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-14
  • 1970-01-01
  • 1970-01-01
  • 2012-12-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多