Android usa diferentes densidades de píxeles para diferentes dispositivos. Esto incluye LDPI (bajo DPI), MDPI (medio), HDPI (alto), etc. Hay mejores prácticas a seguir aquí para obtener los mejores resultados.
- La manera más simple es hacer diferentes versiones de botones para diferentes DPI. El proyecto de Android tiene una carpeta res que podría tener Drawable-hdpi, drawable-mdpi y subcarpetas con nombres similares. Cada dispositivo leerá desde la carpeta correspondiente que coincida con su resolución.
- Si las imágenes no están presentes en las carpetas respectivas, el sistema tomará la imagen de la carpeta disponible y la redimensionará. Esto puede crear artefactos, porque las relaciones entre ellos son como LDPI = 0.75 MDPI, MDPI = 0.75 HDPI y así sucesivamente.
- Debería intentar usar fondos escalables para botones de imagen usando imágenes de 9 parches . La documentación de Android tiene mucha cobertura al respecto.