2009-12-14 44 views
10

Bất kỳ ý tưởng nào tại sao tính năng này không tạo hoạt động giống như cửa sổ bật lên thay vì hoạt động hoàn toàn lấp đầy màn hình?Android - Hoạt động không lấp đầy màn hình chính

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

Tôi cho rằng tôi chỉ cần thiết để thiết lập chiều cao và chiều rộng bố trí bố trí một cái gì đó khác hơn là "fill_parent", nhưng nó vẫn xuất hiện như một màn hình màu đen hoàn toàn lấp đầy màn hình.

Cuối cùng, tôi chỉ muốn tạo cửa sổ bật lên, nhưng tôi không muốn sử dụng AlertDialog. Điều này có thể không?

Trả lời

25

Bạn phải đặt cửa sổ Hoạt động của mình để thả nổi. Bạn có thể làm điều này bằng cách cho hoạt động của bạn theo phong cách Dialog xác định bởi Android (android:style/Theme.Dialog), hoặc xác định phong cách riêng của bạn, như thế này:

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

Sau đó thiết lập các phong cách trên hoạt động của bạn trong Manifest của ứng dụng.

+0

Cảm ơn. Đó là chính xác những gì tôi cần. –

+1

Nó sẽ là - style = "@ style/AlertDialog.AppCompat" ngay bây giờ. – SanVed

1

Trên điện thoại của tôi nhưng hãy kiểm tra this website here nó cho biết cách sử dụng PopupWindow chính xác.

Hy vọng điều này sẽ giúp hoặc chỉ cho bạn đúng hướng.

Các vấn đề liên quan