在工具栏中更改汉堡图标的大小?

4

我有两个问题可能有点奇怪,但无论如何...

我有一个标题为应用程序的工具栏。如何将其更改为不是标志的图片?

下一个问题:是否可以设置或更改工具栏中汉堡包图标的大小? 我使用以下代码制作了经典导航抽屉(我还使用了ActionBarDrawerToggle),但如果您将其与我的工具栏中的其他项目(图标)进行比较,则大小太小。

toolbar = (Toolbar) findViewById(R.id.application_toolbar);
setSupportActionBar(toolbar);

getSupportActionBar().setDisplayShowHomeEnabled(true);

NavigationDrawerFragment drawerFragment = (NavigationDrawerFragment)getFragmentManager().findFragmentById(R.id.fragment_navigation_drawer);
drawerFragment.setUp(R.id.fragment_navigation_drawer,(DrawerLayout)findViewById(R.id.drawer_layout), toolbar );

感谢任何帮助!=)

1
更改图标请执行以下操作:getSupportActionBar().setIcon() - Josef
你好@Josef,你怎么样?感谢你的回答。你知道如何设置由ActionBarDrawerToggle创建的动画汉堡图标的大小吗?我找不到任何相关信息。你认为这有可能吗? - Nurzhan Nogerbek
2个回答

11

我通过以下方式解决了这个问题:

for (int i = 0; i < mToolbar.getChildCount(); i++) {
   if(mToolbar.getChildAt(i) instanceof ImageButton){
       mToolbar.getChildAt(i).setScaleX(1.5f);
       mToolbar.getChildAt(i).setScaleY(1.5f);
   }
}

我的汉堡图标大小已经增加。


1

我想增加汉堡按钮的大小,但其他答案都行不通。 this answer 的代码完美地解决了这个问题,下面是贴出的代码。

“创建一个自定义类,该类扩展Drawable类以创建汉堡和导航图标。有各种方法可以更改其中任何一个的大小,但以下是控制汉堡图标的方法。”

public class HamburgerDrawable extends DrawerArrowDrawable {

    public HamburgerDrawable(Context context){
        super(context);
        setColor(context.getResources().getColor(R.color.white));
    }

    @Override
    public void draw(Canvas canvas){
        super.draw(canvas);

        setBarLength(30.0f);
        setBarThickness(5.0f);
        setGapSize(5.0f);
    }
}

"然后从你的类中调用它:"
private void increaseHamburgerSize(){
    mDrawerToggle.setDrawerArrowDrawable(new HamburgerDrawable(this));
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接