setSystemUiVisibility(SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION) ne fonctionne pas

J'ai été aux prises avec setSystemUiVisibility() pour essayer de cacher la douce boutons de navigation pour un temps (pour un lecteur vidéo). Il ne semble pas fonctionner comme annoncé. Voici mon code, à l'intérieur d'un visible FrameLayout.

void setNavVisibility(boolean visible)
{
    int newVis = SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
    if (!visible)
    {
        newVis |= SYSTEM_UI_FLAG_LOW_PROFILE | SYSTEM_UI_FLAG_HIDE_NAVIGATION;
    }
    setSystemUiVisibility(newVis);
}

Légèrement modifié à partir du SDK exemple:

    void setNavVisibility(boolean visible) {
        int newVis = SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | SYSTEM_UI_FLAG_LAYOUT_STABLE;
        if (!visible) {
            newVis |= SYSTEM_UI_FLAG_LOW_PROFILE | SYSTEM_UI_FLAG_FULLSCREEN
                    | SYSTEM_UI_FLAG_HIDE_NAVIGATION;
        }

Ni rien faire quand on l'appelle. J'ai eu un certain succès quand je les ai appelés à partir d'un autre View, mais la documentation ne mentionne pas que le View vous appelez a aucun effet? Je suppose que la documentation est (surprise, surprise) manque un peu ici. Personne ne sait ce qui se passe vraiment?

OriginalL'auteur Timmmm | 2013-01-06