¿Qué pasa con setScaleX / setScaleY?
Al tratar de encontrar una solución para el diseño que quiero, me encontré con los métodos setScaleX / setScaleY, que son miembros de la clase View.
Ver documento de la clase
- API de Android 23. WebView cómo ignorar errores de JavaScript
- Cómo iniciar una actividad desde la vista personalizada
- Obtener el valor del atributo Hint de AttributeSet
- Los contenidos de CardView no respetan match_parent
- ¿Cómo encadenar la animación en android a la misma vista?
Ahora mirando los métodos de RelativeLayout y filtrado por el nivel 8 de la API, puesto que estoy desarrollando una aplicación para> = 2.2, los dichos métodos se descoloran hacia fuera. Pero al mirar " Atributos XML heredados de la clase android.view.View " las propiedades android: scaleX / android: scaleY todavía están disponibles. Desafortunadamente, intentar usar estas propiedades no funciona y Eclipse dice: "error: No se encontró identificador de recurso para el atributo 'scaleX' en el paquete 'android'"
RelativeLayout class doc
Así que parece que la documentación es contradictoria y scaleX / scaleY no están disponibles hasta 3.0 o me estoy perdiendo algo?
- Android ExpandableListView y onChildClick no funciona
- Android habilita el botón Atrás en la vista web
- Ajustar dinámicamente la altura de los encabezados de grupo en un ExpandableListView
- El teclado de software redimensiona la imagen de fondo en Android
- android webview Relacionados
- Aplicar una máscara a una sola vista de superposición sin enmascarar toda la actividad
- Cómo hacer un Scroll Listener para WebView en Android
- ¿Cuál es la manera correcta de ampliar EditText para darle funcionalidad adicional "predeterminada"
Me encontré con un problema similar cuando traté de establecer la vista con un valor scaleX inicial antes de reproducir cualquier animación, sin embargo view.setScaleX () es desde el nivel 11 de API accroding a @ Dr.J.
Si desea utilizar la API de animación de nido de abeja en niveles anteriores de API, intente con NineOldAndroids en http://nineoldandroids.com/ . Basado en este lib de opensource, hay una solución para proporcionar la vista una scaleX inicial.
ObjectAnimator.ofFloat(getMyButton(), "scaleX", 1f, 0f).setDuration(1).start();
Ok, parece que esta es una representación falsa en los documentos, como se explica aquí scaleX / scaleY son propiedades añadidas a la clase View con Honeycomb y, por lo tanto, no está disponible en Froyo.
No, los Docs tienen razón:
Public void setScaleX (float scaleX) Desde: API Nivel 11
Froyo es API Nivel 8.
NineOldAndroid
está obsoleto de acuerdo con su enlace github NineOldAndroid
Utilizar la Android Support library
lugar de NineOldAndroid
Por lo que debe utilizar ViewCompat
lugar de ViewHelper
Simplemente cambie:
view.setScaleX(2);
o
ViewHelper.setScaleX(view,2);
a:
ViewCompat.setScaleX(view,2);
Espero eso ayude
Utilice el com.nineoldandroids.view.ViewHelper
para las API más antiguas:
ViewHelper.setScaleY(myButton, 0.01f);
- Uso de Gson y Retrofit 2 para deserializar las complejas respuestas de la API
- Java.lang.NoClassDefFoundError: ayc para InterstitialAd