2012-05-12 2 views
0

Я вникаю в искусство андроида и холста, и у меня есть все, что нужно, и небольшой проект, над которым я работаю! Я создал фреймворк для цикла canvas для отображения анимации, часть, в которой я рисую на холсте, выглядит следующим образом:Android помещает все мои холсты в другой класс?

// DRAW TO THE CANVAS 
@Override 
public void onDraw(Canvas canvas) { 
    // CLEAR CANVAS 
    canvas.drawColor(Color.YELLOW); 
    androidMan.draw(canvas); 
      circle.draw(canvas); 
      square.draw(canvas); 
} 

Все 3 объекта появляются и все работает нормально. Так как я новичок в обоих Java и андроид Я хотел бы поставить эти 3 заявления отрисовки в отдельный класс, если это возможно, так что я могу иметь onDraw смотреть что-то подобное,

// DRAW TO THE CANVAS 
@Override 
public void onDraw(Canvas canvas) { 
    // CLEAR CANVAS 
    canvas.drawColor(Color.YELLOW); 
    renderCanvas(); 
} 

И в визуализации холст что-то вроде

androidMan.draw(canvas); 
      circle.draw(canvas); 
      square.draw(canvas); 

Но когда я это делаю, он не работает, и приложение не загружается на моем телефоне, даже если вопрос глупо толстый! Если возможно, я бы хотел, чтобы renderCanvas был его собственным файлом.

ответ

0

Во-первых, изменение подписи метода renderCanvas

renderCanvas(Canvas canvas) 

И называют это как

renderCanvas(canvas); 

агрономии OnDraw.

Смежные вопросы