Autore Topic: Problema optionMenu  (Letto 427 volte)

Offline fragia

  • Nuovo arrivato
  • *
  • Post: 17
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Note II
  • Sistema operativo:
    Mac OS X
Problema optionMenu
« il: 23 Giugno 2014, 09:33:17 CEST »
0
Salve,

premettendo che sono principiante vorrei chiedere il motivo per questo comportamento del mio optionMenù:

ho creto un semplice applicazione per la mia attività con dei pulsanti che aprono delle pagine, ho inserito anche il codice per avere un option menù e tutto funziona ma mi succede questo e vorrei sapere il motivo perchè non riesco a capire quale sia il problema. In pratica

il menù è configurato in modo che dovrebbe visualizzare una icona nella barra il alto e 2 opzioni quando clicco sul i tre pulsanti ma:

- Nella mia applicazione questo non succede...
   nell emulatore appaiono i 3 punti e se clicco  visualizza le tre opzioni (quindi niente icona)
   nel mio cell Note2 invece neanche i tre punti ma solo se clicco sul tasto fisico appaiono le tre voci


Se pero creo un nuovo progetto e inserisco lo stesso codice
  nell'emulatore appare l'icona e se clicco i tre pulsanti le 2 voci (come dovrebbe essere)
  nel mio note2 invece appare l'icona ma non i 3 punti e le 2 voci si vedono solo tramite il pulsante fisico.

Sbaglio qualcosa? devo inserire forse qualche attributo?

Grazie

file java
Codice (Java): [Seleziona]
     //
         public boolean onOptionsItemSelected(MenuItem item)
            {
                int id=item.getItemId();
                switch(id)
                {
                    case R.id.firstitem: //nome id dato nel file menu
                        Toast.makeText(this,"Cliccato VOCE 1",Toast.LENGTH_LONG).show();
                        break;
                    case R.id.seconditem:
                        Toast.makeText(this,"Cliccato VOCE 2",Toast.LENGTH_LONG).show();
                        break;
                    case R.id.thirditem:
                        Toast.makeText(this,"Cliccato VOCE 3",Toast.LENGTH_LONG).show();
                        break;
                }
                return super.onOptionsItemSelected(item);
            }
               
               
               
               
                 @Override
                    public boolean onCreateOptionsMenu(Menu menu)
                    {
                        MenuInflater inflater=getMenuInflater();
                        inflater.inflate(R.menu.main,menu);
                        return super.onCreateOptionsMenu(menu);
                    }
                //

File Xml del menu
Codice (XML): [Seleziona]
<menu xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
   xmlns:tools="http://schemas.android.com/tools"
   tools:context="it.dev.android.lagodelleginestre.MainActivity" >

       <item android:id="@+id/firstitem"
       android:title="Voce 1"
       android:showAsAction="always"
       android:icon="@android:drawable/ic_menu_agenda"/>
   
         <item android:id="@+id/seconditem"
       android:title="Voce 2"
       android:showAsAction="never"
       android:icon="@android:drawable/ic_menu_agenda"/>
   
    <item android:id="@+id/thirditem"
       android:title="Voce 3"
       android:showAsAction="withText"
       android:icon="@android:drawable/ic_menu_agenda"/>
       

   
   
</menu>

iClaude

  • Visitatore
Re:Problema optionMenu
« Risposta #1 il: 24 Giugno 2014, 22:52:40 CEST »
0
Se il dispositivo ha un tasto menu fisico l'overflow menu (i tre puntini) non compare ed è sostituito dal tasto fisico.
Precisa scelta di Android per evitare la duplicazione dello stesso menu, come spiegato qua:
Backwards Compatibility | Android Developers

Offline rebus_007

  • Utente junior
  • **
  • Post: 51
  • Hola!
  • Respect: +2
    • Github
    • Google+
    • rebus007
    • raphael.bussa
    • rebus_007
    • Mostra profilo
    • rebus007
  • Dispositivo Android:
    Nexus 5X
  • Play Store ID:
    Raphael+Bussa
  • Sistema operativo:
    OS X El Capitan
Re:Problema optionMenu
« Risposta #2 il: 24 Giugno 2014, 23:50:11 CEST »
0
Per le icone che vuoi far vedere imposta android:showAsAction="ifRoom"

Inviato dal mio Galaxy Nexus utilizzando Tapatalk

"Chi è più pazzo, il pazzo o il pazzo che lo segue?" - Obi-Wan Kenobi

DEVICE CHE USO: Nexus 5X 32 GB | NVIDIA SHIELD Tablet K1 16 GB

Offline rebus_007

  • Utente junior
  • **
  • Post: 51
  • Hola!
  • Respect: +2
    • Github
    • Google+
    • rebus007
    • raphael.bussa
    • rebus_007
    • Mostra profilo
    • rebus007
  • Dispositivo Android:
    Nexus 5X
  • Play Store ID:
    Raphael+Bussa
  • Sistema operativo:
    OS X El Capitan
Re:Problema optionMenu
« Risposta #3 il: 24 Giugno 2014, 23:50:44 CEST »
0
http://developer.android.com/guide/topics/resources/menu-resource.html

Inviato dal mio Galaxy Nexus utilizzando Tapatalk

"Chi è più pazzo, il pazzo o il pazzo che lo segue?" - Obi-Wan Kenobi

DEVICE CHE USO: Nexus 5X 32 GB | NVIDIA SHIELD Tablet K1 16 GB

Offline fragia

  • Nuovo arrivato
  • *
  • Post: 17
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Note II
  • Sistema operativo:
    Mac OS X
Re:Problema optionMenu
« Risposta #4 il: 26 Giugno 2014, 06:25:30 CEST »
0
Ciao,

Grazie a Tutti per le risposte :-)