2009-12-14 3 views
10

Vous ne savez pas pourquoi cela ne crée pas une activité qui ressemble à un popup au lieu d'une activité qui remplit complètement l'écran?Android - Activité qui ne remplit pas l'écran parent

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:orientation="vertical" 
       android:layout_width="300dip" 
       android:layout_height="120dip" 
       android:layout_marginTop="100dip"> 

      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
          android:orientation="vertical" 
          android:layout_height="120dip" 
          android:layout_width="300dip"> 

      <TextView android:layout_width="fill_parent" 
         android:layout_height="wrap_content" 
         android:text="@string/hello" /> 

      </RelativeLayout> 
    </LinearLayout> 

Je suppose que je ne devais régler la hauteur de mise en page et la largeur de la mise en page à autre chose que « fill_parent », mais il apparaît toujours comme un écran noir qui remplit complètement l'écran. En fin de compte, je veux simplement créer un popup, mais je ne veux pas utiliser un AlertDialog. Est-ce possible?

Répondre

25

Vous devez définir la fenêtre de votre activité comme flottante. Vous pouvez le faire en donnant votre activité le style de dialogue défini par Android (android:style/Theme.Dialog), ou définir votre propre style, comme celui-ci:

<style name="MyFloatingWindow"> 
    <item name="android:windowBackground">@android:color/transparent</item> 
    <item name="android:background">@android:color/transparent</item> 
    <item name="android:windowIsFloating">true</item> 
    <item name="android:windowNoTitle">true</item> 
</style> 

Ensuite, définissez le style sur votre activité dans Manifest de l'application.

+0

Merci. C'est exactement ce dont j'avais besoin. –

+1

Ce serait - style = "@ style/AlertDialog.AppCompat" maintenant. – SanVed

1

Sur mon téléphone, mais vérifiez this website here il montre comment utiliser PopupWindow correctement.

Espérons que cela vous aide ou vous oriente dans la bonne direction.