Поделиться холстом между классами? - PullRequest
0 голосов
/ 27 января 2011

Я пишу приложение для Android, и у меня есть настройка класса, которая расширяет View.Внутри этого класса я перезаписываю onDraw.

У меня есть еще один класс, где я делаю большую обработку.Мне было интересно, есть ли способ использовать метод onDraw во втором классе тоже?Второй класс ничего не расширяет.

1 Ответ

0 голосов
/ 27 января 2011

Вы можете создать экземпляр 2-го класса из первого, а затем передать полученный Canvas в качестве параметра методу 2-й ведьмы, если это необходимо.

Нечто подобное.

public void onDraw(Canvas canvas){
  super.onDraw(canvas);
  MyDrawer drawer = new MyDrawer(); //The 2nd class
  canvas.store(); //Use it to store the actual matrix and any further change you can do in the paint method will not take effect over the original matrix
  drawer.drawOn(canvas);
  canvas.restore();//Return the original matrix, any new paint will use the original matrix
  }
...