【问题标题】:setHomeAsUpIndicator() for my actionbar in Android Studio doesn't appear to be working我在 Android Studio 中的操作栏的 setHomeAsUpIndicator() 似乎不起作用
【发布时间】:2020-03-29 19:51:29
【问题描述】:

我正在将操作栏中的默认箭头更改为下拉菜单图标。这是我的操作栏的代码:

Toolbar toolbar = findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    ActionBar actionbar = getSupportActionBar();
    actionbar.setDisplayHomeAsUpEnabled(true);
    actionbar.setHomeAsUpIndicator(R.drawable.menu);

问题是,图标没有从后退箭头变为菜单图标。 drawable 中的菜单是 jpg 文件,所以我不明白为什么使用它来替换后退箭头会出现问题。有什么建议么?

【问题讨论】:

  • 文件大小是多少?您是否尝试过使用 PNG 文件?

标签: java android user-interface android-actionbar toolbar


【解决方案1】:

试试getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); etSupportActionBar().setHomeAsUpIndicator(R.drawable.upbutton);

这里是the source

【讨论】:

  • 它似乎根本没有做任何事情。我尝试将传递给 setHomeAsUpIndicator() 的可绘制对象更改为其他图像,但它们都有相同的结果。
【解决方案2】:

您可以使用此代码:-

        setSupportActionBar(toolbar);
        getSupportActionBar().setHomeAsUpIndicator(R.drawable.back_arrow_icon_drawable);
        getSupportActionBar().setHomeButtonEnabled(true);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

并覆盖此方法:-

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                onBackPressed();
                break;
        }
        return super.onOptionsItemSelected(item);
    }

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-27
    • 2012-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多