Android透明小部件背景图像

时间:2012-03-17 15:26:57

标签: android widget

在我的应用中有几个小部件主题。这些主题包括.png文件作为窗口小部件背景。一位用户问我是否可以使小部件背景完全透明。我创建了一个0%透明度的新图像(我正在使用GIMP),但在应用程序中,窗口小部件只有20%透明。我尝试了0.1%,同样的结果。当我使用8,4%时,图像具有8-20%的透明度。 我不认为我的代码是错误的,因为所有其他背景都工作正常(其中一个是50%透明)。

顺便说一句,我发布了我的代码。如果我能在没有背景的情况下做到这一点也很好,例如禁用小部件的背景或其他东西..

  RemoteViews updateViews = new RemoteViews(EditPreferences.this.getPackageName(), R.layout.main);
  updateViews.setTextColor(R.id.widget_textview, Color.rgb(208, 202, 202));
  updateViews.setTextColor(R.id.widget_textview2, Color.WHITE);
  updateViews.setTextColor(R.id.widget_textview3, Color.rgb(176, 175, 175));
  updateViews.setImageViewBitmap(R.id.ImageView01, ((BitmapDrawable)EditPreferences.this.getResources().getDrawable(R.drawable.totaltransparent)).getBitmap());
  ComponentName thisWidget = new ComponentName(EditPreferences.this, HelloWidget.class);
  AppWidgetManager manager = AppWidgetManager.getInstance(EditPreferences.this);
  manager.updateAppWidget(thisWidget, updateViews);

1 个答案:

答案 0 :(得分:1)

我添加了updateViews.setViewVisibility(R.id.ImageView01, View.INVISIBLE);,现在我看不到可以使用的imageview,但是我无法点击小部件(因为点击是在imageview上定义的)。

然后我将remoteViews.setOnClickPendingIntent(R.id.ImageView01, configPendingIntent);更改为          AppWidgetProvider类中的remoteViews.setOnClickPendingIntent(R.id.widget_textview, configPendingIntent);,现在我可以单击文本视图来打开应用程序!