Mam FragmentActivity, niektóre fragmenty i usługę działającą w tle. Czy możliwe jest sprawdzenie z usługi, jeśli widoczny jest określony fragment?Android: Sprawdź, czy fragment jest widoczny.
Odpowiedz
Sprawdź kod poniżej:
public class MyFragment extends Fragment
@Override
public void setMenuVisibility(final boolean visible) {
super.setMenuVisibility(visible);
if (visible) {
...
}
}
To od this thread. Lub możesz również sprawdzić this one.
public boolean isFragmentUIActive() {
return isAdded() && !isDetached() && !isRemoving();
}
Czy podstęp?
Zwraca wartość false, jeśli wywołuję ją z usługi, ale może robię coś nie tak. – user2538848
check if(YourFragment.this.isVisible())
Jak w pasku zadań z zakładkami? Nawigacja jest pomieszana w tym schemacie fragmentów. – Skynet
Jak nawigacja jest pomieszana? Co chcesz osiągnąć? –
Mam pasek zadań Pasek czynności, Fragmenty składają się z kart, Mam przycisk na pasku akcji, który po naciśnięciu przechodzi do innego fragmentu powiedzieć "Informacje o aplikacji". Jak tylko użytkownik przejdzie do informacji, wyłączam go, aby nie był wywoływany nadmiarowo, a następnie włączam go ponownie po naciśnięciu przycisku wstecz, ale mówię, jeśli użytkownik nawiguje do informacji (informacje są wyłączane do momentu naciśnięcia klawisza), ale chcę włącz go ponownie, jeśli nie zostanie naciśnięty powrót, ale nastąpi nawigacja między kartami. – Skynet
To naprawdę nie jest powielane, ponieważ inne pytanie jest zadawane w kontekście ViewPager, a odpowiedzi odzwierciedlają tym kontekście. To jest bardziej ogólne pytanie. – awy
to nie jest duplikat. –
Rozwiązaniem, które najlepiej sprawdziło się, było http://stackoverflow.com/a/6751537/1816603 –