Android - 未填充父屏幕的活动

时间:2009-12-14 21:21:35

标签: android user-interface

知道为什么这不会创建一个看起来像弹出窗口而不是完全填满屏幕的活动的活动?

 <?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>

我认为我只需要将布局高度和布局宽度设置为“fill_parent”以外的其他值,但它仍然显示为完全填满屏幕的黑屏。

最终,我只是想创建一个弹出窗口,但我不想使用AlertDialog。这可能吗?

2 个答案:

答案 0 :(得分:26)

您必须将活动窗口设置为浮动。您可以通过为您的活动提供Android(android:style/Theme.Dialog)定义的Dialog样式,或者定义您自己的样式来实现此目的,如下所示:

<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>

然后在应用程序的Manifest中设置活动的样式。

答案 1 :(得分:0)

在我的手机上,但请检查this website here,它会显示如何正确使用PopupWindow。

希望这有助于或指向正确的方向。