關於Android懸浮窗要獲取按鍵響應的問題


要在Android中實現頂層的窗口彈出,一般都會用WindowsManager來實現,但是幾乎所有的網站資源都是說彈出的懸浮窗不用接受任何按鍵響應。

而問題就是,我們有時候需要他響應按鍵,比如電視上的android,我們要它響應遙控器上的音量按鍵等等之類的。這時就必須要對添加的View進行LayoutParams的相關設置了。

主要的代碼就兩個地方。

第一,添加的view不可以設置layoutParams.flags=LayoutParams.FLAG_NOT_FOCUSABLE;//否則就完全屏蔽了按鍵了

第二,需要設置view.setFocusableInTouchMode(true);

這兩個設置后,為添加的VIew設置的按鍵監聽才可以接收到按鍵信息,怎么處理就是看需求了。

view.setOnKeyListener(new OnKeyListener() {            
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                Log.e("wytings","onKeyListener");
                return false;
            }
        });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM