Pergunta

Estou fazendo um menu para um aplicativo e fiquei apontado para este recurso útil que lista todos os desenhos que fazem parte do jar Android 2.0. O exemplo de uso dado é

myMenuItem.setIcon(android.R.drawable.ic_menu_save);

Infelizmente, o que eu quero (e a maioria da lista) não está disponível por padrão. eu recebo

android.R.drawable.ic_menu_login cannot be resolved

Quando tento definir as imagens do item do menu:

    @Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Add two example menu buttons
    int groupId = 0;
    int menuItemOrder = Menu.NONE;

    int menuItemId = 1;
    String menuItemText = "Add Login Details";
    MenuItem menuItem = menu.add(groupId, menuItemId, menuItemOrder, menuItemText);
    menuItem.setIcon(android.R.drawable.ic_menu_login )

Alterou algo nos lançamentos recentes do Android? Parece que a maioria deles agora é 'recursos privados' ... não conseguiu encontrar muitas informações sobre isso, mas encontrei alguns conselhos:

É usado para acessar recursos privados. Não o use porque esses recursos privados são frequentemente removidos/renomeados/etc. Usá -lo provavelmente quebraria seu aplicativo no futuro.

Por que eles mudariam os nomes de recursos? (As imagens por trás delas certamente, mas os nomes?) Como faço para acessar o IC_MENU_LOGIN então? Existe uma razão melhor para não do que o acima?

Foi útil?

Solução

Como faço para acessar o ic_menu_login então?

Copie -o para o seu aplicativo. Você pode encontrar todos eles em sua instalação SDK, especificamente em $ANDROID_HOME/platforms/$API/data/res/, Onde $ANDROID_HOME está onde você instalou o SDK e $API é algum nível de Android (por exemplo, android-2.1).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top