tres studio puntos menus icono español ejemplos boton barra bar agregar android menu key hardware

studio - Android: detecta mediante programación si el dispositivo tiene un botón de menú de hardware



menus en android ejemplos (6)

Actualmente estoy luchando con este problema. Necesito comprobar si el dispositivo, donde está instalada la aplicación, tiene una tecla de menú de hardware. Debido a que no existe en algunos dispositivos como Galaxy Nexus, lo estoy mostrando directamente en la interfaz de usuario en este caso.

Ya he examinado PackageManager.hasSystemFeature (), pero no encontré nada útil allí.

¿Alguien ha hecho esto?


Creo que una posible y mejor solución es agregar una barra de acciones propia. Entonces, todos los dispositivos pueden verlo y no es necesario verificar la configuración del hardware o la versión de Api.



Incluso en dispositivos con Honeycomb y más tarde, el sistema proporcionará un "botón de menú" para aplicaciones escritas para 2.x versiones de Android. Solo se llama el "menú de desbordamiento". Por lo tanto, no tiene sentido comprobar si habrá o no un botón: estará allí si es necesario.

Como regla general, debe verificar la funcionalidad específica, no mirar los números de versión del sistema / API. Use la clase ActionBar si está disponible; de ​​lo contrario, vuelva al menú de opciones de 2.x.

¿Has mirado el tutorial del Google Action Bar ? Eso aclara lo que deberías estar haciendo.


Si desea un calificador de recursos, que podría ser el caso, ya que desea diferenciar las IU, use el keyssoft recursos keyssoft .


ViewConfiguration.get(context).hasPermanentMenuKey()

Ver ViewConfiguration#hasPermanentMenuKey() para más información. Tenga en cuenta que esto solo está disponible para API nivel 14+ (Android 4.0 Ice Cream Sandwich o más reciente).


if(Build.VERSION.SDK_INT <= 10 || (Build.VERSION.SDK_INT >= 14 && ViewConfiguration.get(this).hasPermanentMenuKey())) { // menu key is present } else { //No menu key }