2014-11-23 8 views
9

Pracuję nad aplikacją dla systemu Android, która odbiera treści z innych aplikacji udostępniających je za pomocą intencji Androida. Zrobiłem filtr intencyjny, aby otrzymać udostępnioną zawartość do aplikacji, ale zobaczyłem, że aplikacje takie jak Pocket zrobiły to bez opuszczania oryginalnej aplikacji z nakładką na aplikację i nie wiem jak to zrobić. Czy ktoś wie, jak to zrobić, czy daje mi wskazówki?Jak utworzyć nakładkę podczas udostępniania w aplikacji na Androida?

enter image description here

+0

mógłbyś podzielić rozwiązanie jeśli już to rozwiązać? Próbuję utworzyć nakładkę dokładnie taką jak Pocket – Zen

+0

Jedyne, co musisz zrobić, to utworzyć działanie z treścią, którą chcesz pokazać w nakładce. Ustaw temat, kiedy Nikola Despotoski napisał w zaakceptowanej odpowiedzi, a następnie ustaw IntentFilter (https://developer.android.com/training/basics/intents/filters.html), aby odfiltrować zawartość, którą chcesz otrzymać. – jesusbotella

Odpowiedz

7

start aktywność, która ma przezroczysty motyw z następującym atrybutem s (sprawdź to w przypadku interfejsu API 18 w przypadku błędu):

<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:windowIsFloating">true</item> 
<item name="android:backgroundDimEnabled">false</item> 

Ustaw elementy podrzędne tak, jak chcesz, tak jak w normalnej aktywności.

+0

to działa, ale wydaje się, że krany nie są przekazywane do podstawowej aplikacji/działania. czy istnieje sposób na stworzenie nakładki, która pozwala na interakcję z aplikacją/działalnością, która jest poniżej? –

+1

Sposób na zrobienie tego, co chcesz, to uruchomienie usługi, która tworzy nakładkę za pomocą klasy WindowManager i wywołanie metody finish() z działania. Podobnie jak Facebook Chat Heads. http://stackoverflow.com/questions/15975988/what-apis-in-android-is-facebook-using-to-create-chat-heads – jesusbotella

3

Po otrzymaniu Intent, należy rozpocząć usługi które tworzą i podłączyć View/ViewGroup na Okno. Pozwoli to zachować aplikację wywołującą na pierwszym planie.

Aby utworzyć pływającą nakładka spojrzeć tutaj: http://www.piwai.info/chatheads-basics/

Powiązane problemy