2013-06-13 2 views
0

Я хочу нарисовать прямоугольник на кнопку. Все проведенные мной исследования говорят мне, что это должно работать, но это не так. Я просто не понимаю, почему.Рисунок на кнопке Нажмите

В моем классе MainActivity у меня есть:

Bitmap b = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888); 
public Canvas canvas = new Canvas(b); 

В моем конструкторе у меня есть:

button.setOnClickListener(new View.OnClickListener() 
    { 
     public void onClick(View v) 
     { 
      Paint paint = new Paint(); 
      paint.setColor(Color.GREEN); 
      //paint.setStrokeWidth(5); 
      canvas.drawRect(0, 0, 50, 50, paint); 
      Log.e("Blah Blah Blah", "Blah Blah, Blah"); 
     } 
    }); 

Это действительно идет в функцию, которую я вижу, потому что, когда я нажимаю его «Бла Бла Blah ", но он не рисует прямоугольник.

Любые идеи?

ответ

1

Вы должны установить свой холст на ImageView

//Create a new image bitmap and attach a brand new canvas to it 
Bitmap tempBitmap = Bitmap.createBitmap(myBitmap.getWidth(), myBitmap.getHeight(), Bitmap.Config.RGB_565); 
Canvas tempCanvas = new Canvas(tempBitmap); 

//Draw the image bitmap into the cavas 
tempCanvas.drawBitmap(myBitmap, 0, 0, null); 

Paint paint = new Paint(); 
paint.setColor(Color.GREEN); 
//paint.setStrokeWidth(5); 
tempCanvas.drawRoundRect(new RectF(x1,y1,x2,y2), 2, 2, paint); 

//Attach the canvas to the ImageView 
myImageView.setImageDrawable(new BitmapDrawable(getResources(), tempBitmap)); 
Смежные вопросы