Blackberry удалить пункт меню - PullRequest
0 голосов
/ 06 марта 2012

У меня есть главный экран с 5 меню, и после определенного действия мне нужно удалить 2 из них способом, который выполняет действие, могу ли я удалить пункты меню программно?

1 Ответ

0 голосов
/ 06 марта 2012

Запустите этот пример кода:

public class Abc extends MainScreen
{   
    ButtonField click;

    MenuItem saveMenu;

    public Abc() 
    {       
        createGUI();
    }

    private void createGUI() 
    {   
        saveMenu=new MenuItem("Save", 100, 101);
        addMenuItem(saveMenu);

        click=new ButtonField("click");
        click.setChangeListener(new FieldChangeListener() 
        {
            public void fieldChanged(Field field, int context) 
            {
                removeTheMenu(saveMenu);
            }
        });
        add(click);


    }   

    public void removeTheMenu(MenuItem menuItem) 
    {           
        Screen screen=Ui.getUiEngine().getActiveScreen();
        Menu menu=screen.getMenu(0);//Gives the Menu list of active screen only;
        for(int i=0;i<menu.getSize();i++)
        {
            if(menu.getItem(i).toString().equalsIgnoreCase(menuItem.toString()))
            {
                removeMenuItem(menuItem);
                Status.show("Removed Successfully", 1000);
            }       
        }       
    }   
}

Этот код может вам помочь;

...