在操作栏中显示菜单时具有转换/动画效果

时间:2012-03-02 03:28:43

标签: android

目前,我在操作栏中有一个菜单,我会在运行时将其显示出来。

public void setShareMenuVisible(final boolean visible) {
    this.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            if (shareMenu != null) {
                shareMenu.setVisible(visible);
            }
        }
    });
}

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:id="@+id/menu_share"
        android:icon="@drawable/ic_share"
        android:orderInCategory="1"
        android:showAsAction="always"
        android:visible="false"/>
    <item android:id="@+id/menu_about"
        android:icon="@drawable/ic_about"
        android:title="@string/menu_about"
        android:orderInCategory="2"
        android:showAsAction="never"/>   
</menu>

然而,shareMenu.setVisible(true)不够吸引人。我希望菜单可以是从屏幕顶部转移到当前位置的动画,或者使用alpha动画显示在其当前位置。

enter image description here

我知道Android支持动画,如下面的教程所述。 (使用View.startAnimation()

http://www.barebonescoder.com/2010/06/android-development-more-animations-part-1/

但是,Menu不是View。我怎么可能在动作栏的菜单上有动画效果?

1 个答案:

答案 0 :(得分:0)

不使用菜单,在ActionBar中使用自定义视图 然后你可以有动画图像