小插件 打开Android程序动画,Android小部件:RemoteViews的动画?

参见英文答案 >

Is there a way to animate on a Home Widget?                                    5个答案                                我没有太多的成功应用动画的视图内的RemoteViews。

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

由于我无法使用findViewById()得到一个参考,像在Activity和RemoteViews中没有动画设置器,我不知道该怎么做。

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

对于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中

ComponentName myWidget = new ComponentName(this, MyWidget.class);

AppWidgetManager manager = AppWidgetManager.getInstance(this);

RemoteViews newViews = buildNewRemoteViewsWithAnimation();

manager.updateAppWidget(myWidget, newViews);

任何其他建议?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Android Go版本中添加小部件,您需要遵循以下步骤: 1. 在您的Android Go应用程序中创建一个小部件布局,可以使用XML或代码创建布局。 2. 创建一个小部件提供者类,并在其中实现小部件的功能。 3. 在AndroidManifest.xml文件中注册小部件提供者类。 4. 在应用程序中将小部件添加到主屏幕或其他支持小部件的屏幕上。 下面是一个简单的示例,演示如何在Android Go应用程序中添加小部件: 1. 创建一个小部件布局,例如widget_layout.xml: ``` <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/widget_textview" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Hello, World!" /> </LinearLayout> ``` 2. 创建一个小部件提供者类,例如WidgetProvider.java: ``` public class WidgetProvider extends AppWidgetProvider { public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { for (int appWidgetId : appWidgetIds) { RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout); appWidgetManager.updateAppWidget(appWidgetId, views); } } } ``` 3. 在AndroidManifest.xml文件中注册小部件提供者类: ``` <receiver android:name=".WidgetProvider"> <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_info" /> </receiver> ``` 4. 在应用程序中将小部件添加到主屏幕或其他支持小部件的屏幕上,例如: ``` AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context); ComponentName componentName = new ComponentName(context, WidgetProvider.class); int[] appWidgetIds = appWidgetManager.getAppWidgetIds(componentName); appWidgetManager.updateAppWidget(appWidgetIds, views); ``` 这样,您就可以在Android Go应用程序中添加小部件了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值