Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Yo uso ShareActionProvider en PopupMenu, pero mostrar dos PopupMenu?

Yo uso un ShareActionProvider en un PopupMenu, pero cuando hago clic en el elemento de menú compartido, muestra dos PopupMenus en la pantalla, uno cubierto por el otro. Y uno muestra el icono de la aplicación y el nombre, el otro sólo muestra el nombre de la aplicación.

Funciona bien excepto este problema …
¿Cómo puedo arreglarlo?

PS: perdóname por mi mala expresión

Mi código es:

PopupMenu popup = new PopupMenu(this, button); popup.getMenuInflater().inflate(R.menu.scrawl_popup_menu, popup.getMenu()); MenuItem overflowItem = popup.getMenu().findItem(R.id.popup_share); ShareActionProvider overflowProvider = (ShareActionProvider) overflowItem.getActionProvider(); overflowProvider.setShareHistoryFileName( ShareActionProvider.DEFAULT_SHARE_HISTORY_FILE_NAME); overflowProvider.setShareIntent(createShareIntent()); 

Menu.xml es:

 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/popup_clear" android:icon="@drawable/ic_menu_clear" android:title="@string/popup_menu_clear" /> <item android:id="@+id/popup_insert_bg" android:icon="@drawable/ic_menu_insert_bg" android:title="@string/popup_menu_insert_bg"/> <item android:id="@+id/popup_share" android:icon="@android:drawable/ic_menu_share" android:title="@string/popup_menu_share" android:actionProviderClass="android.widget.ShareActionProvider"> </item> </menu> 

One Solution collect form web for “Yo uso ShareActionProvider en PopupMenu, pero mostrar dos PopupMenu?”

Tuve que usar startActivity (getShareIntent ("/ status.jpg")); Esto no funciona exactamente como usted espera. Sin embargo, puede ser utilizado para el mismo propósito. Espero que ayude.

 private Intent getShareIntent(String filePath) { Intent shareIntent = new Intent(Intent.ACTION_SEND); File sdCard = Environment.getExternalStorageDirectory(); File sharedFile = new File(sdCard + sharePath); Uri uri = Uri.fromFile(sharedFile); shareIntent.setType("image/*"); shareIntent.putExtra(Intent.EXTRA_STREAM, uri); return shareIntent; } 

Sin embargo, finalmente me mudé a usar la barra de acción con Patten Selection en su lugar: http://developer.android.com/design/patterns/selection.html

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.