繁体   English   中英

处理android小部件中的远程视图

[英]Handling remoteviews in android widget

我是Android小部件的新手,目前我正在开发小部件,我正在使用更多的图像,它运行完美,但有时它抛出错误Failed Binder Transaction ,我知道问题是与remoteviews,谁能告诉我如何处理android小部件中的远程视图?

这是因为对RemoteViews的所有更改都是序列化的(例如setInt和setImageViewBitmap)。 位图也被序列化为内部包。 不幸的是,这个捆绑包的尺寸限制非常小。

确保缩小位图的尺寸。 请参阅以下代码。

 public static Bitmap scaleDownBitmap(Bitmap photo, int newHeight, Context context) {

 final float densityMultiplier = context.getResources().getDisplayMetrics().density;        

 int h= (int) (newHeight*densityMultiplier);
 int w= (int) (h * photo.getWidth()/((double) photo.getHeight()));

 photo=Bitmap.createScaledBitmap(photo, w, h, true);

 return photo;
 }

这个newHeight应该很小(屏幕上应该占用每个方块大约100个)并将它用于你的小部件,你的问题将得到解决:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM