【问题标题】:Switch from Up Arrow to Hamburger Icon on Button Click in ActionBar从向上箭头切换到按钮上的汉堡图标单击操作栏中
【发布时间】:2015-03-10 22:53:24
【问题描述】:

我想在单击按钮时将 Android ActionBar 上的 Hamburger 图标 更改为 向上箭头,并在另一个按钮单击事件上将向上箭头更改回 Hamburger 图标.

我尝试过使用,

getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);

但是,它们都不起作用。我可以轻松地将汉堡图标更改为向上箭头,

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

反之则不然

另外,我如何覆盖主页按钮控件

我的意思是当某个布局打开时,我希望向上箭头在单击时关闭该布局,而不是调用导航抽屉。

请帮忙。

【问题讨论】:

  • 嗯。我有完全相同的问题。你解决了这两个问题,还是他们仍然开放?

标签: android


【解决方案1】:

您可以使用以下代码:

    ViewGroup home =(ViewGroup)findViewById(android.R.id.home).getParent();
    // get the first child (up imageview)
    ((ImageView) home.getChildAt(0)).setImageResource(your image here);

抱歉,没有评论权限,所以更新答案。好吧,由于这是一个 imageView,我假设您可以放置​​一个 onClickListener 并在使用汉堡包和后退箭头之间切换。这应该接近材料设计的动画汉堡包行为。

【讨论】:

  • 但是如果我明确设置这样的图标,我不会丢失在 Material Design 中打开抽屉时变成向上箭头的动画汉堡图标吗?
  • 但是如何实现动画呢?还有其他想法吗?有没有办法通过某种方法将主页按钮设置为默认的汉堡图标?
猜你喜欢
  • 2020-05-19
  • 1970-01-01
  • 2021-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-10
  • 1970-01-01
相关资源
最近更新 更多