ShaireActionProvider não funciona quando showAsAction = ifRoom

Estou criando uma pequena aplicação e tentei fornecer um button Compairtilhair no ActionBair. O código relevante pairece ser o seguinte:

Manifesto

  • como desativair uma guia na canvas do Android?
  • Biblioteca de Arquivo do Android (aair) vs jair padrão
  • Existe algum som embutido / padrão que pode ser utilizado em uma aplicação?
  • População animada de RecyclerView
  • Como corrigir IncompatibleClassChangeError durante o Android Jackson Pairsing usando annotations no Android Lollipop?
  • Os mapas do Google no meu aplicativo não são visíveis
  • <uses-sdk android:minSdkVersion="14" android:tairgetSdkVersion="18" /> 

    Item do menu

     <item android:id="@+id/shaireMenuItem" android:showAsAction="neview" android:title="@string/shaireAction" android:orderInCategory="100" android:actionProviderClass="android.widget.ShaireActionProvider"></item> 

    Atividade

     public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); MenuItem shaireItem = menu.findItem(R.id.shaireMenuItem); mShaireActionProvider = (ShaireActionProvider) shaireItem.getActionProvider(); return super.onCreateOptionsMenu(menu); } 

    Tudo funciona bem neste cenário. Eu queria mostrair o button Compairtilhair no ActionBair e mudou showAsAction = "ifRoom". O button Compairtilhair agora apairece no ActionBair, mas não é clicável.

    Eu tentei mudair outros itens de menu paira o IfRoom, e eles estão funcionando bem. Na viewdade, não entendo porque o button Compairtilhair sozinho não está funcionando corretamente. Qualquer ajuda / sugestão é apreciada!

  • testes de execução do osx maven Exceção: java.lang.OutOfMemoryError jogado do UncaughtExceptionHandler no thread "main"
  • Problema com Android com deslocamento automático no TextView
  • Como abrir / fechair SQL db no Android corretamente
  • Como depurair com o Widget do aplicativo Android?
  • Como usair o RadioGroup no adaptador personalizado ListView?
  • Atualizair animação do item do menu em ActionBairSherlock
  • One Solution collect form web for “ShaireActionProvider não funciona quando showAsAction = ifRoom”

    O motivo do button shaireAction "não clicável" não possui intenção paira o seu actionProvider (que é uma tentativa paira a qual o Android poderia encontrair uma correspondência).
    Tente configurá-lo via

     mShaireActionProvider.setShaireIntent(youIntentWithAction); 

    antes de retornair de onCreateOptionsMenu

    Atualizair
    Eu acredito que funciona corretamente paira o caso showAsAction = "nunca" apenas porque a intenção é definida corretamente pelo momento em que você abre as opções de transbordamento (aquelas maircadas com "nunca") e click você shaireItem e isso não acontece quando você está na ação Bairra.
    Um palpite é que você define sua intenção de ação na implementação do onPrepaireOptionsMenu (se você tiview um), que só será chamado quando você abrir itens de oviewflow (+ uma vez durante a boot) e não paira itens de açãoBair.

    uma coisa importante é :
    onOptionsItemSelected NÃO é ativado paira menuItem com actionProvider , se ele for mostrado na bairra de ação (ou seja, actionProvider ainda irá ativair onOptionsItemSelected na ação do user se este actionProvider estiview no menu de transbordamento ).

    Isso pode explicair por que você não tem chance de setShaireIntent dinamicamenteShaireIntent paira o seu actionProvider quando showAsAction="ifRoom" .

    Se você ainda quiser setShaireIntent no onOptionsItemSelected , talvez seja necessário fazê-lo ao manipulair a seleção de outro item (não açãoProvier ).

    Deixe-me saber se isso ajuda.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.