Android Performance XML Drawable vs CSS3 vs Imágenes
Estoy intentando crear algunos botones de conmutación personalizados en mi aplicación de Android. Y quiero que parezca lo siguiente:
- Cómo iniciar / iniciar el android estilo de actividad más rápido
- ¿Cómo puedo restar estas listas más rápido?
- Rendimiento ORM: ¿es greenDAO más rápido que ORMLite?
- Ionic: transiciones lentas en la aplicación android instalada
- ¿Por qué llamar a setScaleX durante el gesto de pinch zoom causa parpadeo?
En esta imagen 75, 39 y AZ están en estado "Off" y 37 está en estado "On".
Así que mi pregunta es:
¿Cuál es la mejor manera de generar aquellos en Android:
-
XML dibujables con bordes, fondos, rayos fronterizos
-
Un montón de imágenes de 9 parches para cada forma, estado y densidad de pantalla, o
-
¿Utilizar un WebView y utilizar CSS3?
- Notificando un solo hilo: notify, notifyAll o concurrent.locks.Condition?
- ¿Cuál es la causa de los picos de rendimiento periódicos que se ven al hacer el procesamiento de matriz de computación caro en el Nexus 4?
- Efecto de trayectoria de trazo que hace la pantalla lenta
- ¿Cuál es la diferencia entre BaseAdapter y ArrayAdapter?
- Android error Dx problema de escritura salida: ya preparado
- No puedo seleccionar mi cliente de Android en la perspectiva de DDMS de eclipse
- Desempeño de Android: Strings vs. Enums vs. Static Final Ints
- Diferencias de rendimiento entre SQLite en Android e iOS
Bien. He ido con el XML Drawable. Aquí está mi solución:
<?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_checked="true"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:top="0dp" android:bottom="2dp" android:left="0dp" android:right="0dp"> <shape android:shape="rectangle"> <solid android:color="@color/toggle_border_dark" /> <corners android:topLeftRadius="20dp" android:topRightRadius="20dp" android:bottomRightRadius="30dp" android:bottomLeftRadius="30dp" /> </shape> </item> <item android:top="2dp" android:bottom="0dp" android:left="0dp" android:right="0dp"> <shape android:shape="rectangle"> <solid android:color="@color/toggle_border_light" /> <corners android:topLeftRadius="30dp" android:topRightRadius="30dp" android:bottomRightRadius="20dp" android:bottomLeftRadius="20dp" /> </shape> </item> <item android:top="1dp" android:right="1dp" android:left="1dp" android:bottom="1dp"> <shape android:shape="rectangle" > <solid android:color="@color/toggle_bg_on" /> <corners android:topLeftRadius="20dp" android:topRightRadius="20dp" android:bottomRightRadius="20dp" android:bottomLeftRadius="20dp" /> </shape> </item> </layer-list> </item> <item> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:top="0dp" android:bottom="2dp" android:left="0dp" android:right="0dp"> <shape android:shape="rectangle"> <solid android:color="@color/toggle_border_light" /> <corners android:topLeftRadius="20dp" android:topRightRadius="20dp" android:bottomRightRadius="30dp" android:bottomLeftRadius="30dp" /> </shape> </item> <item android:top="2dp" android:bottom="0dp" android:left="0dp" android:right="0dp"> <shape android:shape="rectangle"> <solid android:color="@color/toggle_border_dark" /> <corners android:topLeftRadius="30dp" android:topRightRadius="30dp" android:bottomRightRadius="20dp" android:bottomLeftRadius="20dp" /> </shape> </item> <item android:top="1dp" android:right="1dp" android:left="1dp" android:bottom="1dp"> <shape android:shape="rectangle" > <solid android:color="@color/toggle_bg_off" /> <corners android:topLeftRadius="20dp" android:topRightRadius="20dp" android:bottomRightRadius="20dp" android:bottomLeftRadius="20dp" /> </shape> </item> </layer-list> </item> </selector>
- Imagen borrosa en otro dispositivo
- Utilización de OpenMAX (IL?) Para la decodificación de audio y vídeo en Android