onDraw() се извиква, но нищо не се показва

Трябва да нарисувам няколко правоъгълника на екрана върху фоновото изображение. За целта създавам този клас:

public class MyImageView extends ImageView {

    public MyImageView(Context context) {
        super(context);
    }

    public MyImageView(Context context, AttributeSet attrs) {
        super(context,attrs);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        System.out.println("draw");
         Bitmap background = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
         canvas.drawColor(Color.BLACK);
         canvas.drawBitmap(background, 0, 0, null);
    }

}

и на xml файл на дейността, която поставих:

<com.www.MyImageView android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:layout_marginLeft="150dip"
        android:layout_marginTop="50dip">

В logCat получавам съобщението от метода onDraw(), но нищо не се показва. Къде ми е проблемът? какво ми липсва


person Gabrielle    schedule 21.10.2011    source източник
comment
Променете wrap_content на fill_parent   -  person ingsaurabh    schedule 21.10.2011
comment
Благодаря..това беше проблема :)   -  person Gabrielle    schedule 21.10.2011
comment
Радвам се да чуя, че проблемът е решен :)   -  person ingsaurabh    schedule 21.10.2011


Отговори (1)


просто опитай canvas.drawBitmap(background, 0, 0, new Paint());

person Huang    schedule 21.10.2011