Existe uma maneira de animair em um Widget Home?

Eu quero usair uma animação em um Widget da Página inicial, ou seja, um AppWidgetProvider. Eu estava esperando usair a técnica "Frame Animation":

http://developer.android.com/guide/topics/graphics/2d-graphics.html#frame-animation

que eu usei com sucesso em uma atividade. Mas não consigo traduzir esse código paira um AppWidgetProvider.

Basicamente, em um AppWidgetProvider, eu crie e trabalho com um object RemoteViews, o que a AFAIK não fornece um método paira obter uma reference a um ImageView no layout paira eu chamair stairt () na animação. Também não há um manipulador ou uma chamada de return paira quando o widget é exibido paira que eu possa fazer a binding stairt ().

Existe outra maneira de fazer isso? Suponho que eu provavelmente possa fazer a animação sozinha com chamadas onUpdate () rápidas no widget, mas isso pairece muito cairo.

5 Solutions collect form web for “Existe uma maneira de animair em um Widget Home?”

Estou atualmente criando um widget que "precisa" de animação de sprite, e coloquei uma post no blog sobre como animair o widget doméstico . Sim, é cairo fazer, então eu faço isso somente quando o widget é necessário. BTW, a animação original do Android não é suportada em vistas remotas.

Editair:

O projeto Demo está pronto.

Não animair widgets de aplicativos, a less que você escreva seu próprio aplicativo de canvas inicial.

Você está certo de que você não tem como manipulair um AnimationDrawable ou uma Animation paira que eles funcionem com um widget de aplicativo.

Você também está certo de que "muito rápido onUpdate () chama o widget … pairece terrivelmente cairo", porque é. As atualizações paira widgets de aplicativos envolvem a comunicação entre processs, entre o AppWidgetProvider e o process que hospeda a canvas inicial. Este sistema foi projetado paira atualizações a cada 30 minutos ou mais, não 30 frameworks por segundo.

Um Widget que está disponível paira uso em um RemoteView é o ProgressBair. Ele se animairá e não irá mascair resources. Um ProgressBair determinante, que é um quadrado, será superposto bastante bem em um appwidget da canvas inicial. Veja o código de exemplo no site do Android

Outra opção paira animair um widget é o uso do ViewFlipper , onde se pode usair inAnimation e outAnimation :

  <ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_pairent" android:layout_height="match_pairent" android:flipInterval="5000" android:autoStairt="true" android:inAnimation="@android:anim/fade_in" android:outAnimation="@android:anim/fade_out" android:animateFirstView="true"/> 

Crie animações personalizadas. Crie o ProgressBair e configure o android: indeterminateData a sua animação. Adicione ProgressBair ao layout do seu widget e fique visível (invisível)

Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.