3

我跟着ActionBarDrawerToggle GUIDE

而且我知道如何通过在此中使用来在操作栏上显示抽屉图标drawerImageRes

公共ActionBarDrawerToggle(活动活动,DrawerLayoutdrawerLayout,intdrawerImageRes,int openDrawerContentDescRes,int closeDrawerContentDescRes)

托管抽屉drawerLayout的Activity

链接到给定 Activity 的 ActionBar 的 DrawerLayout

drawerImageRes 用作抽屉指示器的 Drawable 资源

openDrawerContentDescRes 一个字符串资源,用于描述可访问性的“打开抽屉”操作

closeDrawerContentDescRes 一个字符串资源,用于描述可访问性的“关闭抽屉”操作

但是the icon looks like so small

所以我想知道Is possible to increase the Drawer icon size?

请人们帮助我,

谢谢,

4

4 回答 4

3

实现了一个很好的答案,这是对此https://stackoverflow.com/a/40774724/3485872的轻微调整

首先,您要创建一个自定义类,该类扩展了创建汉堡包和导航图标的 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));
}
于 2017-01-24T13:58:03.497 回答
1

当您构造一个新的 ActionBarDrawerToggle 时,其中一个参数是drawerImageRes。如果您希望此资源更大,请尝试编辑此资源(通常为 R.drawable.ic_drawer)并增加其大小。

于 2014-05-27T18:42:50.063 回答
1

我找到了答案,我需要先研究一下 Action Bar。

添加这个:

<style name="Theme.white_style" parent="@android:style/Theme.Holo.Light.DarkActionBar">
        <item name="android:actionBarSize">64dp</item>
        <item name="actionBarSize">64dp</item>
</style> 

有效!

p/s :根据Iconography,定义高度匹配操作栏图标的规范,即 32 x 32 dp。

mdpi - 32 dp = 32 像素

hdpi - 32 dp * 1.5 = 48 像素

xxhdpi - 32 dp * 2 = 64 像素

额外参考

于 2014-05-28T00:28:41.287 回答
1

您可以使用以下样式定义属性。它将产生一个更大的汉堡按钮和后退箭头图标。

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
</style>

<!-- This is the Global style for the NavigationDrawer toggle -->
<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle">
    <!--        Set that the nav buttons will animate -->
    <item name="spinBars">true</item>
    <!--       Set the bar length -->
    <item name="barLength">64dp</item>
    <!--        Set the space between the hamburger button bars -->
    <item name="gapBetweenBars">12dp</item>
    <!--        Set the thickness of the bar -->
    <item name="thickness">@dimen/half_default_gap</item>
    <!--        Set the color of the toggle button -->
    <item name="color">@color/colorToolbarTitleText</item>

    <!-- Here's how you increase the size of the back arrow icon. -->
    <item name="arrowHeadLength">@dimen/one_and_half_default_gap</item>
    <item name="arrowShaftLength">64dp</item>
</style>
于 2020-07-06T23:32:40.097 回答