Android: Ancho y altura del icono del iniciador en DP

En android podríamos definir recursos por densidad de pantalla como LDPI, HDPI y MDPI.

Estoy esperando para construir una interfaz de usuario que tiene un TextLayout que es el mismo ancho y altura que el ImageView junto a él. ImageView hospeda una imagen, del mismo tamaño que el icono del lanzador (72px para HDPI y así sucesivamente).

¿Hay una manera de saber que el icono tiene una anchura-altura específica en 'dp' (sin kwnoi así que puedo código duro el XML. Pienso que esto es posible porque el dp es independiente del dispositivo pero no podría encontrar ninguna manera de conseguir los valores en dp.

<TextView android:id="@+id/holidaylistitem_day" android:layout_width="<X>dp" android:layout_height="<Y>dp" android:text="1st"/> <ImageView android:id="@+id/holidaylistitem_type" android:src="@drawable/ic_launcher" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

Lo que necesito es los valores de X e Y para que ambos sean del mismo tamaño.

La Guía de diseño de Android tiene una página que describe las dimensiones de los iconos recomendados. En resumen, los iconos del lanzador son 48×48 dp.

Como dice Android Killer, "hay 4 casos, ya que hay diferentes tipos de dispositivos en android …". Y puede obtener dpi.To convertir px a dp utilizar esto:

dp = (px * 160) / dpi
Referencia:
Desarrollador.android

hay 4 casos, ya que hay diferentes tipos de dispositivos en android:

 ldpi --> 36x36 mdpi --> 48x48 hdpi -->72x72 xhdpi --> 96x96 

Compruebe este enlace .

Tengo una mejor solución para su situación, sin embargo, es un poco complicado. Aquí vamos:

  1. Cuando no puede decidir el tamaño de su icono, pero está seguro de que es cuadrado, y desea que su ancho / altura igual que su icono, colocado horizontalmente. Puedes hacerlo:

    android: layout_alignTop = "@ + id / holidaylistitem_type" androide: layout_alignBottom = "+ id / holidaylistitem_type"

  2. Ahora su posición de TextView y la altura son fijos. A continuación, amplíe su TextView y haga esto:

    @Anular
    protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec) {

      int width = MeasureSpec.getSize(widthMeasureSpec); int height = MeasureSpec.getSize(heightMeasureSpec); if (width > height) { width = height; } super.onMeasure( MeasureSpec.makeMeasureSpec(width, MeasureSpec.EXACTLY), MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY) ); } 
  3. Cuadrado tamaño ImageView.

  • Error del proyecto AIDE y Eclipse
  • Cómo mostrar íconos de elemento en la barra de herramientas Android
  • Problema al analizar cadena xml en java
  • Dibujo de múltiples formas con ShapeDrawable en xml con Android
  • Botón con el icono izquierdo y el texto perfectamente alineados
  • Crashing debido a "No identificador de paquete al obtener el valor del número de recurso ..."
  • Vincular la vista personalizada de Android a una xml de diseño específico (¿es posible?)
  • Cómo configurar el fondo del botón seleccionado / no seleccionado en el archivo XML
  • Android Lint report duplicación de <issue>
  • ¿Cómo hacer lo contrario de atributo de preferencia android: dependencia?
  • ¿Cómo puedo crear un diseño con pestañas completamente en XML?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.