Вопрос

Я разделил свой класс Inner View с моего основного класса в свой собственный файл. В моем главном классе у меня есть вид на установку в виде OnTouchListener, который записывает движение пользователя в матрицу, чтобы он мог перевести и масштабировать вид. После отделения его все работает, но я не уверен, как пройти матрицу к представлению на OnDraw для обновления. Какие-либо предложения? Спасибо

Это было полезно?

Решение

Я могу придумать два способа сделать это:

Вы можете создать переменную для вашей матрицы в вашем классе View и метод, который принимает матрицу в качестве аргумента, и что обновляет VAR с этим значением матрицы. Затем вы можете вызвать этот метод из основного вида деятельности перед вызовом метода OnDaw (), который может затем использовать этот внутренний VAR для его расчетов и так далее.

Альтернатива будет для вашей матрицы VAR в вашем главном классе, чтобы быть статичным, чтобы вы могли назвать его с вашего представления, не требуя экземпляра вашего основного класса, доступного в вашем классе View.

Последний метод является лучшим, поскольку он не требует вашего приложения для поддержания двух вариантов, по существу одинаковым значением, но прежний способ может быть проще реализовать, в зависимости от того, как вычисляется ваша матрица.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top