2012-07-02 58 views
11

Cách hiển thị hoạt động trong suốt trên hoạt động khác mà không xóa hoạt động trước đó?Cách hiển thị hoạt động trong suốt đối với hoạt động khác mà không xóa hoạt động trước

Tôi có thể tạo hoạt động trong suốt nhưng khi tôi cố gắng đẩy nó bằng ý định, hoạt động trước đó sẽ bị xóa. Tôi muốn hoạt động minh bạch của mình ở đầu hoạt động trước đó.

Cảm ơn!

Trả lời

23

tuyên bố hoạt động của bạn trong manifest như thế này

<activity android:name=".yourActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"/> 

và thêm một nền transperent để bố trí của bạn như thế này

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
    android:background = "any tranparent image name" > 
</RelativeLayout> 

Edit:

tôi nghĩ rằng bạn đang sử dụng này để mở hoạt động trong suốt của bạn, hãy hoàn thành hoạt động trước đó của bạn

Intent intent =new Intent(mContext,yourNewActivity.class); 
startActivity(intent); 
finish(); 

remove kết thúc từ đây thì hoạt động mới của bạn trong ngày đầu hoạt động trước đó như thế này

Intent intent =new Intent(mContext,yourNewActivity.class); 
startActivity(intent); 

Hope giúp đỡ ..

+1

có tôi đã làm chính xác giống như trên bằng cách loại bỏ kết thúc() tuyên bố vấn đề của tôi được giải quyết. Cảm ơn! – Androjit

+1

Giải pháp tốt. Lưu ý: Nền trong suốt không cần phải là hình ảnh trong suốt, đủ để đặt: android: background = "# 00ffffff" – EZDsIt

2

Tôi không biết tại sao bạn muốn điều đó, nhưng có thể Custom dialog có thể làm những gì bạn đang tìm kiếm.

EDIT: Câu hỏi này đã được trả lời trước: How do I create a transparent Activity on Android?

Tôi không muốn trở thành thô lỗ, nhưng tôi nghĩ rằng bạn nên làm nghiên cứu nhiều hơn từ phía bạn. Ngoài ra, bạn có thể đăng một số mã để xem chính xác những gì bạn đang cố gắng ra, nó cũng cho thấy rằng bạn đang cố gắng một cái gì đó.

+2

Bạn đã sử dụng Snapchat? Khi chụp ảnh, bạn nhấn biểu tượng biểu tượng cảm xúc để thêm biểu tượng cảm xúc vào hình ảnh. Và biểu tượng đó hiển thị danh sách biểu tượng cảm xúc và có các tab phụ để xóa biểu tượng cảm xúc bạn đã thêm vào hình ảnh. Tất cả chức năng đó có thể được vắt vào hộp thoại? – Donato

2

Đối với AppCompat phong cách, bạn có thể sử dụng đoạn mã sau vào bạn styles.xml và thêm số đó vào số manifest của bạn.

styles.xml

<style name="Theme.Transparent"parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowIsTranslucent">true</item> 
<item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowContentOverlay">@null</item> 
<item name="android:windowNoTitle">true</item> 
<item name="android:backgroundDimEnabled">true</item> 
<item name="colorPrimaryDark">@android:color/transparent</item></style> 

Manifest

<activity android:name=".HomeActivity" 
android:theme="@style/Theme.Transparent"</activity> 
+0

Tuyệt vời .. tính năng này hoạt động tốt hơn cho appcompact. cảm ơn.. – vijay

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