2
A
回答
3
由於API級別14,您可以使用ViewConfiguration.hasPermanentMenuKey()來檢測設備是否具有永久性菜單鍵。
通常,虛擬按鈕和物理按鈕是互斥的,所以這對您有所幫助。例如:
public class MyActivity extends Activity {
// ...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
boolean hasPermanentMenuKey = ViewConfiguration.get(this).hasPermanentMenuKey();
boolean hasVirtualKeys = !hasPermanentMenuKey;
String message = hasVirtualKeys ? "This device has virtual menu keys" : "This device has physical keys";
Toast.makeText(this, message, Toast.LENGTH_LONG).show();
}
// ...
}
警告:有一些案件中,這不會幫助你。例如,假設製造商決定使用虛擬鍵和物理菜單鍵;那麼這種方法不會幫助你。另一種情況是手機沒有虛擬鍵和物理菜單鍵(例如Samsung S5)。
相關問題
- 1. 如何檢測虛擬後退按鈕的使用情況?
- 2. ARToolkit虛擬按鈕
- 3. 檢測虛擬化
- 4. 在虛擬鍵盤上檢測按鍵
- 5. 檢測長按「虛擬」鑰匙
- 6. 如何檢測當在按鈕片斷android按下後按鈕?
- 7. Android ICS虛擬按鈕旋轉
- 8. AR中的虛擬按鈕功能Android
- 9. android - 如何檢測按鈕的持有?
- 10. 檢測虛擬鍵盤的類型-Android
- 11. Red Pill檢測虛擬化
- 12. iOS虛擬按鈕到Arduino
- 13. 虛擬「後退按鈕」jquery
- 14. 如何檢測虛擬鍵盤事件中的Android用Delphi
- 15. 檢測虛擬MAC地址?
- 16. 如何檢測何時按下按鈕並在android上釋放
- 17. 如何檢測按鈕按下和iphone
- 18. 如何檢測一個按鈕按下?
- 19. 如何檢測按鈕按下?
- 20. 導軌4按虛擬屬性排序
- 21. 如何檢測Android上的按鈕按下歷史
- 22. Android:如何檢測按下日誌的主頁按鈕?
- 23. 如何模擬Android中單擊測試的單擊按鈕
- 24. 檢測耳機按鈕按
- 25. Android模擬按鈕按
- 26. Android:如何模擬後退按鈕
- 27. 如何在Android模擬器中模擬按下home按鈕
- 28. Android - 如何在虛擬鍵盤上按下按鍵?
- 29. Android API檢測Samsung Galaxy Camera Zoom按鈕
- 30. Android Phonegap - 檢測主頁按鈕?
'ViewConfiguration.hasPermanentMenuKey()'在三星S5上返回false,但手機沒有虛擬鍵。我不認爲這是檢查虛擬密鑰的正確方法。 – tomrozb 2015-04-04 12:58:58
你說得對。 S5沒有物理菜單鍵,但沒有虛擬按鈕,所以'boolean hasVirtualKeys =!hasPermanentMenuKey;'不再有效。我已經更新了我的答案,並對此發出了警告。 – 2015-04-07 09:31:47