2014-03-06 301 views
0

在Google Nexus 4(OS 4.4)的應用程序中使用從https://developer.android.com/training/system-ui/visibility.html逐字逐句的代碼,並且永遠不會調用onSystemUiVisibilityChange回調。我可能會認真的不理解這些被調用的條件。我在處於全屏模式的設備上打開另一個應用程序,並且狀態欄已隱藏。未調用回調。這是否只適用於我自己的應用程序?Android onSystemUiVisibilityChange永遠不會被調用

我真正想做的是檢測狀態欄是否顯示,所以我會知道我可以發佈通知,並告知我知道用戶會看到的股票行情文本。如果他們在全屏應用程序中,他們不會看到我的代碼文本,這對我來說並不理想。

回答

0

如果您關閉自己的應用程序並打開另一個應用程序,特別是當此收聽者正連接到您的某個View時,我認爲您不會收到回叫,因爲您的活動在您的活動時將從窗口中分離出來離開前景。即使他們提到下面的示例使用情形表明,它的意思,而你的活動是要使用的屏幕:

通常是好做法,以保持你的UI同步與 系統條可見的變化。 例如,您可以使用此偵聽器來隱藏並顯示與隱藏狀態欄和顯示的 一致的操作欄。

關於你的關心,你的應用的通知不會被看到,因爲狀態欄被隱藏:我覺得很難相信這個問題是不是Android的框架內得到解決,如果他們允許任何應用隱藏系統UI。也許你可以讓你的通知使設備振動,以便用戶獲得其他類型的反饋。

+0

我喜歡振動的想法。這是一個好主意。我在我的應用程序中有一個第三方SDK,它也全屏顯示,並且我的回調仍然不受影響。我有點懷疑這只是爲了我的活動。我想假設我將附加偵聽器的PhoneDecorView對象本地化爲我的應用程序,那麼,呃? – user1965291

相關問題