我创建了一个自定义视图并绘制了一个位图图像。我怎样才能在我的widget中使用这个视图..Below是代码
public class MyWidget extends AppWidgetProvider {
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
for(int i=0 ; i<appWidgetIds.length; i++) {
int appWidgetId = appWidgetIds[i];
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main);
views.setImageViewBitmap( ... );
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
}
public class myCustomView extends View {
Bitmap img;
public myCustomView(Context context) {
super(context);
img = BitmapFactory.decodeResource(context.getResources(), R.drawable.myimg);
}
protected void onDraw(Canvas canvas) {
canvas.drawBitmap( img, 0, 0, new Paint() );
}
答案 0 :(得分:1)
很遗憾,您无法在主屏幕小部件中使用自定义视图。
对于布局,您可以使用FrameLayout,LinearLayout和RelativeLayout。作为视图,您可以使用AnalogClock,Button,Chromometer,ImageButton,ImageView,ProgressBar和TextView。
从Android 3.0开始,可以使用更多视图:GridView,ListView,StackView,ViewFlipper和AdapterViewFlipper。