2012-05-10 5 views

Trả lời

0

Nếu tôi không sai ... bạn có thể tạo một hoạt động với listview .... và đưa chủ đề như thoại trong manifest của nó như thế này ..

<activity android:theme="@android:style/Theme.Dialog" /> 

này sẽ làm cho sẫm màu nền. .

+0

Được rồi nhưng ... Tại sao phải thay đổi mã và tạo hoạt động 'PopupWindow'. – Rajkiran

+1

bởi vì, cửa sổ bật lên của bạn sẽ là một hoạt động, nó sẽ có mặt sau riêng của nó ..... tối theo mặc định ... tạo hiệu ứng cần thiết .. – 5hssba

+0

Đồng ý, nhưng tôi đang nói tại sao gọi một hoạt động khi bạn có quyền kiểm soát PopupWindow với bạn. Dù sao, nếu không có gì hiệu quả, tôi sẽ đi với giải pháp này. – Rajkiran

0

hãy thử mã này nếu cửa sổ bật lên của bạn là hoạt động thì nó sẽ giúp dứt khoát. tạo tệp mystyle.xml trong giá trị thư mục của dự án của bạn và thực hiện những thay đổi này.

<resources> 
    <style name="customStyle" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowBackground">@android:color/transparent</item> 
    </style> 
</resources> 

làm thay đổi này trong menifest.xml

<activity android:name="yourActivity" android:theme="@style/customStyle"></activity> 
+0

Như tôi đã đề cập ở trên, tôi sử dụng điều khiển 'PopupWindow' và NOT' Activity'. – Rajkiran

3

Trong file xml của bạn thêm một cái gì đó như thế này với chiều rộng và chiều cao là 'match_parent'.

<RelativeLayout 
     android:id="@+id/bac_dim_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#C0000000" 
     android:visibility="gone" > 
</RelativeLayout> 

Trong hoạt động của bạn onCreate

//setting background dim when showing popup 
back_dim_layout = (RelativeLayout) findViewById(R.id.bac_dim_layout); 

Cuối cùng làm cho hiển thị khi bạn hiển thị popupwindow của bạn và làm cho có thể nhìn thấy nó đi khi bạn thoát khỏi popupwindow.

back_dim_layout.setVisibility(View.Visible); 
back_dim_layout.setVisibility(View.GONE);