Android 小部件:RemoteViews 上的动画?

2023-09-09移动开发问题
71

本文介绍了Android 小部件:RemoteViews 上的动画?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

将动画应用于 RemoteViews 内的视图并没有取得太大成功.

I'm not having too much success applying animations to views inside a RemoteViews.

为了简单起见,假设我有一个带有 ImageViewButton 的小部件.单击按钮时,我想向 ImageView 添加一个简单的动画(例如旋转).

For the sake of simplicity, let's say I have a widget with an ImageView and a Button. When clicking the button, I want to add a simple animation to the ImageView (a rotation for example).

由于我无法像在 Activity 中那样使用 findViewById() 获得参考,并且 RemoteViews 没有设置器动画,我不知道该怎么办.

Since I can't get a reference using findViewById() like in an Activity and RemoteViews doesn't have a setter for an animation, I'm not sure what should I do.

我正在考虑用新布局替换小部件的 RemoteViews,类似于原始布局,但这个布局已经加载了动画.我可以这样做吗?是否可以在布局中嵌入动画?

I'm thinking of replacing the RemoteViews for the widget with a new layout, similar to the original but this one has the animation already loaded. Can I do this? Is it possible to embed an animation in a layout?

WidgetProvider 的代码如下所示:

Code would be something like this for the WidgetProvider:

Intent intent = new Intent(context, RotateService.class);
PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, 0);

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.a_widget);
views.setOnClickPendingIntent(R.id.a_button, pendingIntent);

appWidgetManager.updateAppWidget(appWidgetId, views);

然后在RotateService中:

Then in RotateService:

ComponentName myWidget = new ComponentName(this, MyWidget.class);
AppWidgetManager manager = AppWidgetManager.getInstance(this);
RemoteViews newViews = buildNewRemoteViewsWithAnimation();
manager.updateAppWidget(myWidget, newViews);

还有什么建议吗?

推荐答案

  1. 创建自定义动画.
  2. 创建 ProgressBar 并在 android:indeterminateDrawable 中设置您的动画.
  3. 将 ProgressBar 添加到您的小部件布局并使其可见(不可见)

这篇关于Android 小部件:RemoteViews 上的动画?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

没有cocos2D的xcode iphone粒子
xcode iphone particles without cocos2D(没有cocos2D的xcode iphone粒子)...
2024-08-12 移动开发问题
4

cocos2d 使用 CCSpeed 动态改变动画速度
cocos2d dynamically changing animation speed with CCSpeed(cocos2d 使用 CCSpeed 动态改变动画速度)...
2024-08-12 移动开发问题
3

Cocos2D 复杂动画
Cocos2D complex animations(Cocos2D 复杂动画)...
2024-08-12 移动开发问题
6

如何在 COCOS2d Android 中使用 CClistview?
How can I use CClistview in COCOS2d Android?(如何在 COCOS2d Android 中使用 CClistview?)...
2024-08-12 移动开发问题
5

带有大图像的Objective C iPad动画-使用什么方法?
Objective C iPad Animation with large images - What method to use?(带有大图像的Objective C iPad动画-使用什么方法?)...
2024-08-12 移动开发问题
10

iPhone - cocos2d - 动画和 C++ 类
iPhone - cocos2d - Animations and C++ class(iPhone - cocos2d - 动画和 C++ 类)...
2024-08-12 移动开发问题
2