每当我尝试初始化菜单项时,我都会实现所有这些方法,我正在寻找一种更好的方法来初始化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;
}
......
};
有没有办法避免这些漫长的方法?
答案 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.#####;
}
};