Dialogue d'image Android / Popup

Est-il possible d'avoir juste une image popup / come-up dans une application Android? Il est semblable à un dépassement de la vue normale d'un AlertDialog afin qu'il contienne juste une image et rien d'autre.

SOLUTION: J'ai pu trouver une réponse grâce à l'aide de @ blessenm. Le masquage d'une activité comme dialogue semble être le moyen idéal. Voici le code que j'ai utilisé. Cette activité de style de dialogue peut être invoquée au besoin par l'application de la même manière qu'une nouvelle activité serait lancée

  • Java.lang.SecurityException: Nom du package d'appel inconnu, com.google.android.gms.common.internal.zzs
  • Comment puis-je avoir une ombre portée sur mon ActionBar (ActionBarSherlock)?
  • Comment démarrer par programme une recherche vocale Google Now?
  • Android O casting pour trouverViewById n'est plus nécessaire?
  • Publication de l'application PAID sur le marché Android - Inde
  • Android possède-t-il une table comme adaptateur pour ListView
  • ImageDialog.java

    public class ImageDialog extends Activity { private ImageView mDialog; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.your_dialog_layout); mDialog = (ImageView)findViewById(R.id.your_image); mDialog.setClickable(true); //finish the activity (dismiss the image dialog) if the user clicks //anywhere on the image mDialog.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); } } 

    Your_dialog_layout.xml

     <?xml version="1.0" encoding="UTF-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/image_dialog_root" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:color/transparent" android:gravity = "center"> <ImageView android:id="@+id/your_image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src = "@drawable/your_image_drawable"/> </FrameLayout> 

    Il est essentiel que vous définissiez le style suivant pour que l'activité puisse l'accomplir:

    Styles.xml

      <style name="myDialogTheme" parent="@android:style/Theme.Dialog"> <item name="android:windowNoTitle">true</item> <item name="android:windowFrame">@null</item> <item name="android:background">@android:color/transparent</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowIsFloating">true</item> <item name="android:backgroundDimEnabled">false</item> <item name="android:windowContentOverlay">@null</item> </style> 

    La dernière étape consiste à déclarer ce style pour l'activité dans le manifeste comme suit:

      <activity android:name=".ImageDialog" android:theme="@style/myDialogTheme" /> 

  • Tout en extrayant adt-bundle-windows-x86_64-20140702 cette erreur depuis Windows 8
  • Afficher l'heure et la date actuelles dans une application Android
  • HttpsURLconnection pour publier et entrer dans Android
  • Empêchez-vous recharger WebView dans FragmentPagerAdapter?
  • Création d'une vue circulaire dans Android
  • Comment coder une nouvelle fonctionnalité compatible vers l'arrière dans Android SDK?
  • 5 Solutions collect form web for “Dialogue d'image Android / Popup”

    Si vous souhaitez simplement utiliser une boîte de dialogue officielle, quelque chose comme ça devrait fonctionner

     Dialog settingsDialog = new Dialog(this); settingsDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); settingsDialog.setContentView(getLayoutInflater().inflate(R.layout.image_layout , null)); settingsDialog.show(); 

    Image_layout.xml

     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="YOUR IMAGE"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="OK" android:onClick="dismissListener"/> </LinearLayout> 

    Non xml:

     public void showImage() { Dialog builder = new Dialog(this); builder.requestWindowFeature(Window.FEATURE_NO_TITLE); builder.getWindow().setBackgroundDrawable( new ColorDrawable(android.graphics.Color.TRANSPARENT)); builder.setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface dialogInterface) { //nothing; } }); ImageView imageView = new ImageView(this); imageView.setImageURI(imageUri); builder.addContentView(imageView, new RelativeLayout.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); builder.show(); } 

    La manière plus flexible et recommandée est d'utiliser DialogFragment. Si vous souhaitez prendre en charge les versions avant 3.0, vous pouvez utiliser la bibliothèque de compatibilité

    Il y a plusieurs façons de le faire. Mais, si vous souhaitez que votre image semble flotter au-dessus de votre activité existante, vous voudrez peut-être utiliser une activité avec Android: theme = "@ style / Theme.Transparent" défini dans le manifeste. Ensuite, concevez votre mise en page pour avoir simplement un ImageView positionné au centre de l'écran. L'utilisateur devra appuyer sur le bouton arrière pour sortir de cela, mais il semble que c'est ce que vous voulez.

    Si vous voulez qu'il ressemble à une boîte de dialogue réelle, vous pouvez toujours utiliser une activité de style de dialogue avec Theme.Dialog. OU, vous pouvez simplement utiliser une boîte de dialogue et la personnaliser.

    Sans utiliser Dialog, vous pouvez utiliser cette bibliothèque pour faire apparaître l'image très facilement.

    https://github.com/chathuralakmal/AndroidImagePopup

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.