有没有简单的方法在android中初始化MenuItem的对象?

时间:2016-09-08 17:27:49

标签: android menu menuitem android-menu

每当我尝试初始化菜单项时,我都会实现所有这些方法,我正在寻找一种更好的方法来初始化MenuItem。

private MenuItem mMenuItem = new MenuItem() {
    @Override
    public int getItemId() {
        return 0;
    }

    @Override
    public int getGroupId() {
        return 0;
    }

    @Override
    public int getOrder() {
        return 0;
    }

    @Override
    public MenuItem setTitle(final CharSequence charSequence) {
        return null;
    }

    @Override
    public MenuItem setTitle(final int i) {
        return null;
    }

    @Override
    public CharSequence getTitle() {
        return null;
    }

    ......  
};

有没有办法避免这些漫长的方法?

1 个答案:

答案 0 :(得分:0)

这是初始化MenuItem的更好方法!这是解决方案

1-首先,您必须创建一个实现 MenuItem 的自定义类,然后实现所需的所有方法。如下所示:

public abstract class MenuItem2 implements MenuItem {

    @Override
    public int getItemId() {
        return 0;
    }

    @Override
    public int getGroupId() {
        return 0;
    }

    @Override
    public int getOrder() {
        return 0;
    }
 .....
   @Override
    public MenuItem setOnActionExpandListener(OnActionExpandListener listener) {
        return null;
    }

}

2秒钟,您可以使用该自定义类 MenuItem2 并仅初始化所需的方法。

 MenuItem menuItem = new MenuItem2() {
            @Override
            public int getItemId() {
                return R.id.#####;
            }
        };