如何设置工具栏溢出菜单图标的动画

萨诺斯·费舍曼

有没有办法使工具栏上默认的3点垂直菜单图标动画化?

我使用标准代码将工具栏用作操作栏:

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

而且我还在onCreateOptionsMenu活动内部使用了方法来为menu.xml文件充气,但是我不知道如何获得对自动创建的溢出图标的更多控制。我最感兴趣的是如何引用菜单图标,以便对其进行动画处理。我不在乎动画类型。可以是简单的旋转动画

埃尔兹

好吧,您可以使用View专门ActionMenuView的代码,因此请尝试将代码复制到您的Activity

//we declare our objects globally
Toolbar tool;  ActionMenuView amv;

然后覆盖onPrepareOptionsMenu,您决定return选择的是

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    //to be safe you can check if children are greater than 1
    amv = (ActionMenuView) tool.getChildAt(1);//hope you've met amv
    return true;
}

现在这是至关重要的部分-每当您要为“ 3个verticall点设置动画时-(您的溢出)您都必须检查可见的孩子-(例如,如果您愿意)实际上忘记了

amv.getChildAt(amv.getChildCount()-1).startAnimation(AnimationUtils.loadAnimation(
        MainActivity.this,R.anim.abc_fade_in));

这为您提供了基本的淡入动画-您现在可以拉皮条兜风了。

编辑1

上面的代码假设您除了向中夸大菜单外,没有向工具栏添加任何内容onCreateOptionsMenu

假设您有一个复杂的ToolBar用法,而不是用于初始化

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    for(int i =0; i < tool.getChildCount(); ++i){
        if(tool.getChildAt(i).getClass().getSimpleName().equals("ActionMenuView")){
            amv = (ActionMenuView) tool.getChildAt(i);
            break;
        }
    }
    return true;
}

,你打电话给你的初始化LSOamv视图可以在任一onCreateOptionsMenu或者onPrepareOptionsMenu,我选择了onPrepareOptionsMenu,因为我想可读性

希望能帮助到你

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

位于动作栏/工具栏上方的Android溢出菜单?

如何在工具栏的末尾设置图标

AppCompat工具栏:在ActionMode中更改溢出图标的颜色

如何更改工具栏导航和溢出菜单图标(appcompat v7)?

如何将溢出菜单放置在工具栏下方而不是溢出菜单与应用栏重叠

新的Android工具栏:如何隐藏溢出菜单图标?

在工具栏溢出菜单中显示菜单项图标时,这种奇怪的情况如何发生?

Android:如何在工具栏的菜单图标上制作过渡动画?

如何在不设置工具栏样式的情况下动态更改所有工具栏图标的颜色

CardView内部的工具栏,用于创建弹出菜单(溢出图标)

更改其图像时Android设置动画工具栏图标

在工具栏中更改后退图标的颜色

如何设置MenuItem文本而不是工具栏中的图标

工具栏菜单图标不显示

工具栏图标的圆形背景

如何在IntelliJ IDEA中更改工具栏和图标的缩放比例?

更改材质工具栏中的溢出菜单图标的颜色

如何在androidx工具栏中更改菜单图标的颜色?

如何使用Jetpack Compose创建带有溢出菜单的工具栏?

工具栏动作触发设置菜单

工具栏设置了错误的图标

如何在工具栏中更改抽屉图标的颜色

如何在工具栏上的溢出菜单中的菜单项上设置字体

Android:工具栏图标,列表项和溢出菜单的背景失真

如何在Android工具栏中设置图标的颜色?

如何为工具栏中的图标设置 OnClick 事件

如何设置表单工具栏后退图标的颜色?

如何更改工具栏中图标的颜色?

关于操作栏、工具栏和菜单图标的问题