2013-07-10 44 views
1

一些背景資料:拆除通知托盤的Android

  • 我的應用程序將通過客人的事件被用來進行自我檢查插件。他們不應該能夠遠離頁面,訪問設備的設置等。這意味着它必須進入各種Kiosk模式。

  • 我需要禁用通知托盤完全,這意味着即使用戶從屏幕頂部向下滑動,狀態欄也不應出現。這是一個顯示你的電池壽命,WiFi/3G連接等。

  • 我已經使我的應用程序全屏,它隱藏狀態欄,但不知何故狀態欄仍然出現一旦用戶從頂部向下滑動的屏幕。執行另一次滑動將隨後打開通知托盤。

  • 我的設備運行在果凍豆上,但其目的是迎合冰淇淋三明治這樣古老的設備。

我該如何去禁用通知托盤?是否有代碼可以幫助我,還是像建議用戶禁用某些設置(比如iPad可以簡單地禁用設備設置中的手勢)那麼簡單?

由於提前,

回答

0

看看this

View disableStatusBar = new View(context); 

WindowManager.LayoutParams handleParams = new WindowManager.LayoutParams(
    WindowManager.LayoutParams.FILL_PARENT, 
    <height of the status bar>, 
    // This allows the view to be displayed over the status bar 
    WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, 
    // this is to keep button presses going to the background window 
    WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | 
    // this is to enable the notification to recieve touch events 
    WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | 
    // Draws over status bar 
    WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN, 
    PixelFormat.TRANSLUCENT); 

handleParams.gravity = Gravity.TOP; 
context.getWindow().addView(view, handleParams); 
+0

嗨,卡梅隆,你測試過了嗎?它看起來不錯,有光澤,但我似乎無法讓它適用於我的應用程序。視圖被添加,但狀態欄仍然可以被拉下。 – Wakka02

+0

我沒有,對不起。但是,我碰到了[this](http://developer.samsung.com/android/technical-docs/Neat-tricks-when-implementing-a-kiosk-app),這可能有些幫助。 – Cameron

+0

它不起作用:( – Wakka02