Android: очистить мой взгляд, когда я нажимаю кнопку - PullRequest
0 голосов
/ 24 ноября 2011

Я создаю вид и использую что-то для рисования на холсте.

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        MyViewCircle myViewCircle = new MyViewCircle(this);
        setContentView(R.layout.main);
        Button evolve = (Button) findViewById(R.id.evolve); 
        img01.addView(myViewCircle);
        evolve.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

            }
        });
    }
private class MyViewCircle extends View {

        public MyViewCircle(Context context) {
            super(context);
            // TODO Auto-generated constructor stub
        }

        @Override
        protected void onDraw(Canvas canvas) {
            // TODO Auto-generated method stub
            super.onDraw(canvas);
            Paint paint = new Paint();
            paint.setAntiAlias(true);
            paint.setColor(Color.RED);
            canvas.drawCircle(50, 50, 100, paint);
        }

    }

Как мне написать код для очистки моего холста, когда я нажимаю кнопку? Кроме того, как можно изменить мою форму, когда я нажимаю кнопку? Я хочу изменить координаты:

canvas.drawCircle(150, 150, 200, paint);

Ответы [ 3 ]

0 голосов
/ 24 ноября 2011

Попробуйте

 @Override
    protected void onDraw(Canvas canvas) {
        if(shouldDraw){
           super.onDraw(canvas);
           Paint paint = new Paint();
           paint.setAntiAlias(true);
           paint.setColor(Color.RED);
           canvas.drawCircle(50, 50, 100, paint);
        }else
           Canvas.drawColor(Color.BLACK);

    }

и в onClick

shouldDraw = false;
view.invalidate();
0 голосов
/ 25 ноября 2011

что такое img01, если это другой макет / вид, вы можете вызвать Пример: img01.removeAllViews().

0 голосов
/ 24 ноября 2011

onDraw () вызывается, если вы нажимаете кнопку, и ваша кнопка изменяется, поэтому вы можете проверить метод onDraw (), если кнопка была нажата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...