天天看點

UWP 判斷windows mobile是使用的實體鍵還是虛拟按鍵

最近在寫啟動螢幕,發現虛拟按鈕會擋住,啟動螢幕的最下面的元素,大概有50 px。可是有什麼辦法知道手機是用的實體鍵還是虛拟按鍵嗎?

如下圖。可以看到紅色的部分顯示了一點點。代碼裡設定的是60px。

UWP 判斷windows mobile是使用的實體鍵還是虛拟按鍵

在網上查找了很久。都沒發現有任何檢視的api。瞬間在心裡開始罵ms了。。

各種論壇各種詢問。

最後有一個機油回答到

UWP 判斷windows mobile是使用的實體鍵還是虛拟按鍵

試了一試。。嗯。。虛拟按鍵全屏的時候會消失掉。。可是。。這不我想要的啊。。

突然間靈光一閃。。想起有這樣一種東西。ApplicationView.GetForCurrentView().VisibleBounds 

于是debug一看。。嘿嘿嘿。終于找到想要的東西。。

最後這個虛拟按鍵的高度 = SplashScreen的高度 - VisibleBounds.Height- statusbarHeight。

1520實體按鍵和950XL虛拟鍵測試通過。。

UWP 判斷windows mobile是使用的實體鍵還是虛拟按鍵

最後再吐槽下ms。。什麼時候出surface phone啊。信仰都用完了。。

繼續閱讀