在小部件中使用视图

时间:2012-03-13 01:23:43

标签: android

我创建了一个自定义视图并绘制了一个位图图像。我怎样才能在我的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() );

}

1 个答案:

答案 0 :(得分:1)

很遗憾,您无法在主屏幕小部件中使用自定义视图。

对于布局,您可以使用FrameLayout,LinearLayout和RelativeLayout。作为视图,您可以使用AnalogClock,Button,Chromometer,ImageButton,ImageView,ProgressBar和TextView。

从Android 3.0开始,可以使用更多视图:GridView,ListView,StackView,ViewFlipper和AdapterViewFlipper。

Source