2012-12-25 59 views
0

在某些情況下,我的應用程序應該顯示塊屏幕。這個屏幕在所有屏幕上彈出,覆蓋所有用戶界面元素,並且不會對後退和主頁按鈕上的按鍵作出反應,但應該能夠輸入密碼。如何在所有屏幕上顯示佈局?

請問我可以怎麼做?

+2

我衷心希望這是不可能的。 –

+0

聽起來像他想爲自己的應用程序執行密碼活動,那有什麼問題? – dmon

+0

作爲一個用戶,我希望能夠遠離這一點,甚至可能與此相關!例如啓動或切換到我的電子郵件/瀏覽器/通話/ Skype應用程序在我的密碼都可以找到。然後返回到此屏幕。 –

回答

0

我會忽略的問題爲什麼你想這樣做,只關注如何。 如果要在所有其他屏幕上顯示UI全屏,則需要使用系統警報窗口。 您需要的權限SYSTEM_ALERT_WINDOW,和你的窗口類型設置爲

WindowManager.LayoutParams.TYPE_SYSTEM_ALERT 
1

你真的不應該嘗試。 用戶應該控制他自己的電話。如果我想檢查我的電子郵件,看看我的通知,交換到另一個應用程序或任何我應該能夠這樣做,只要我可以。

說了:擋住後退按鈕可以通過在活動重寫此方法(什麼也不做,例如)

public void onBackPressed() { 
} 
1

與透明背景創建全屏Activity,把你的「輸入密碼信息」來完成邏輯,override「家」「BackButton」在那個動作活動

但這不是最好的Android的做法。

+1

謝謝你的回答,但我知道這是bossible覆蓋後退按鈕不是有沒有辦法做到這一點的Home鍵 –

+0

有可能過於覆蓋上爲homeButton – Houcine

+0

事件點擊能否請您提供一個例子如何去做? –