2012-08-25 4 views
0

У меня есть метод OnDraw, который рисует набор прямоугольников [как крытую карту]. В событии касания вызывается новый Activity Intent. После вызова нового действия я хочу знать, как перерисовывать прямоугольники на событие buttonClick (показывая новый путь на карте).Как переопределить метод OnDraw?

Ниже я упомянул, что ive сделано до сих пор.

  • 1.I разработал карту на поверхность зрения с использованием DrawRect()
  • 2.Then ловлей прямоугольник координатой onTouch события
  • 3.Использования в WebService, я вычислить кратчайший путь к расположение
  • 4.После ловя прикасались координаты прямоугольника, я прыгать в новую деятельность
  • 5.I хочет заново нарисовать свою карту (включая путь), когда я нажимаю кнопку на новой деятельности

Пожалуйста, дайте мне представление о том, как переопределить и перерисовать метод On Draw ???

Спасибо!

ответ

0

Если я правильно понял, я думаю, вам просто нужно вызвать View.invalidate() на вашем представлении, чтобы заставить его повторно рисовать. Однако я смущен тем, почему вы переключаете деятельность. Похоже, вы должны просто выполнить свой вызов webservice в AsyncTask, а затем в onPostExecute(), вызвать invalidate() в своем представлении, чтобы заставить его повторно рисовать с любыми данными, которые вы сейчас дали.

Однако, похоже, что вы, возможно, не реализовали свой собственный класс вида, а вместо этого рисовали непосредственно на поверхностьView? Я читал о том, как создать собственный подкласс View. Это действительно не так сложно.

+0

Спасибо, что много :) – Ruby

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