Найдено 40 результатов

Nyashka
20 июл 2013, 12:59
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

И видимо это я Вас ввел в заблуждение вот этим: с указанием имени класса наследованного от вьюва (MyView.postInvalidate(); для class MyView extends View{}). разумеется это неправильно. postInvalidate() надо вызывать для экземпляра класса а не для класса как такового -_-. В мое оправдание я Вас заран...
Nyashka
20 июл 2013, 12:41
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

Не вижу в onCreate() создания экземпляра Timer = new Timer(); он там есть? ээ.. нет))) а для чего он нужен?) Ну не знаю) у Вас нульПоинтерЭксцепшн разве не вылетает?) А ошибка у вас из за того что вы обращаетесь не к экземпляру класса наследованного от класса View (который у вас называется v) а к к...
Nyashka
20 июл 2013, 12:16
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

Хм.. Не совсем понял, но попробую помочь (или еще сильнее запутать). И указатели и созданный экземпляр и планировщик(sсhedule()) должны находиться в классе Активити. Вьюв содержит только onDraw() и onTouchEvent(). В run(){} который в sсhedule() только postInvalidate(), с указанием имени класса насл...
Nyashka
20 июл 2013, 10:57
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

c postInvalidate() тоже самое "Cannot make a static reference to the non-static method postInvalidate() from the type View" А таймер у вас где объявлен, в Активити или во Вьюве? У Вас Вьюв в отдельном модуле находится, или прописан в том же модуле что и Активити, в самом классе Активити? Активити и...
Nyashka
20 июл 2013, 09:41
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

Arssir писал(а): c postInvalidate() тоже самое "Cannot make a static reference to the non-static method postInvalidate() from the type View"
А таймер у вас где объявлен, в Активити или во Вьюве? У Вас Вьюв в отдельном модуле находится, или прописан в том же модуле что и Активити, в самом классе Активити?
Nyashka
19 июл 2013, 17:36
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

Но чтобы все заработало, нужно, чтобы метод был static, но если так сделать не работает invalidate(); Может это проблема "для нубиков", но у меня реально плохо получается понимать принципы взаимодействия разных классов в java. Не знаю какой тут уровень, но у invalidate() в описании указывает что он...
Nyashka
15 июл 2013, 23:18
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

GView - класс наследуемый от View Таки есть View. У View есть метод postInvalidate() для вызова перерисовки (произойдет вызов onDraw). Код таймера приводил выше, его надо занести в код класса вьюва, а в конструктор или в onCreate занести первый вызов таймера. Возможно вы это уже и сами поняли, я то...
Nyashka
15 июл 2013, 14:51
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

У меня нету View, я всю графику и логику сделал при помощи методов: protected void onDraw(Canvas canvas) { ... } и public boolean onTouchEvent(MotionEvent event) { ... } Так членами какого класса являются обработчики нажатий и прорисовки, если не View или SurfaceView? (Сорри если ответ на этот вопр...
Nyashka
12 июл 2013, 15:53
Форум: Java
Тема: Дергаем класс через интерфейс (instanceof vs static int)
Ответы: 4
Просмотры: 2784

Re: Дергаем класс через интерфейс (instanceof vs static int)

anber писал(а): 2) знаком ли стандартный метод любого объекта getClass() ?
Спасибо за наводку, буду изучать рефлексию что бы лучше организовать динамическую архитектуру
Nyashka
12 июл 2013, 13:14
Форум: Java
Тема: Дергаем класс через интерфейс (instanceof vs static int)
Ответы: 4
Просмотры: 2784

Re: Дергаем класс через интерфейс (instanceof vs static int)

Кстати говоря, верно вы подметили, что тут возможна работа исключительно через интерфейсы, однако схожий механизм должен работать и в отношении свойств объектов, целостность которых (свойств) нарушена в следствии того что система сама является распределенной (о структуре объектов с которыми будет ра...
Nyashka
12 июл 2013, 13:04
Форум: Java
Тема: Дергаем класс через интерфейс (instanceof vs static int)
Ответы: 4
Просмотры: 2784

Re: Дергаем класс через интерфейс (instanceof vs static int)

1) знакомо ли тебе понятие полиморфизм? 2) знаком ли стандартный метод любого объекта getClass() ? 3) что ты собираешься делать со списком такое что нужно узнавать тип объекта и в тоже время так критична разница в производительности? 1) в принципе знакомо, на нем основывается работа нескольких клас...
Nyashka
12 июл 2013, 12:27
Форум: Java
Тема: Дергаем класс через интерфейс (instanceof vs static int)
Ответы: 4
Просмотры: 2784

Дергаем класс через интерфейс (instanceof vs static int)

Прошу совета по поводу использования instanceof. Говорят что она работает медленно, потому что использует проход по древу классов до всех потомков, и это вроде не очень хорошо. Поэтому хотелось бы знать что из этого лучше по производительности: 1) interface A{}; class B implements A{}; class C imple...
Nyashka
08 июл 2013, 15:54
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

шашка может стать дамкой, не? Там много чего упущено, я лишь архитектуру описывал. Так же опущено как мы получаем координаты и как они изменяются Если нужны подробности я с радостью поясню каждый из этапов. Про шашку-дамку это добавить свойство: Булева дамка = нет; в свойства класса Шашка и менять ...
Nyashka
08 июл 2013, 13:39
Форум: Графика и анимация
Тема: Как сделать шашки на Android?
Ответы: 73
Просмотры: 40297

Re: Как сделать шашки на Android?

Как насчет такой архитектуры? Если словами: Класс активити { убрать панели; установить вью; } Класс Вьюв { МассивСписок <Шашка> Шашки = новый МассивСписок <Шашка>(); Конструктор(){ циклы 2 раза по 8 создать новую шашку вычисляя при этом координаты и поместить в МассивСписок Шашки; загрузить картинки...
Nyashka
08 июл 2013, 12:05
Форум: Графика и анимация
Тема: Канвас, статичные объекты
Ответы: 4
Просмотры: 2897

Re: Канвас, статичные объекты

Возможно, будет полезно вновь заглянуть в клипПаф() или клипРект(), добавляя вычитанием те зоны занятые объектами которые не надо перерисовывать(если они не содержат в себе полупрозрачных областей). Но тут куча проблем есть, часть из них описаны в моей теме: http://forum.startandroid.ru/viewtopic.ph...
Nyashka
29 май 2013, 11:21
Форум: Графика и анимация
Тема: как нарисовать фигуру произвольной формы?
Ответы: 8
Просмотры: 5845

Re: как нарисовать фигуру произвольной формы?

Подскажите пожалуйста, работает ли clipPath() с аппаратным ускорением. Ибо path.addCircle(x,y,r,ccw); с последующим c.clipPath(path); выделяет квадратную область вместо окружности, в то время как без АУ выделяется именно окружность. Заранее спасибо P.S. В примере уважаемого damager82 используется c....
Nyashka
07 апр 2013, 20:39
Форум: Графика и анимация
Тема: Графика, с чего начать?
Ответы: 1
Просмотры: 2244

Re: Графика, с чего начать?

Мне сильно помогла эта статейка: http://davidmd.ru/2012/02/24/%D0%BF%D0%B8%D1%88%D0%B5%D0%BC-%D0%B7%D0%BC%D0%B5%D0%B9%D0%BA%D1%83-%D0%B4%D0%BB%D1%8F-android-%D1%87%D0%B0%D1%81%D1%82%D1%8C-1/ Сам я не разделяю взглядов автора на построение игрового приложения, но лучшего способа вкратце рассказать ка...
Nyashka
03 апр 2013, 10:25
Форум: Графика и анимация
Тема: postInvalidate()
Ответы: 3
Просмотры: 3207

Re: postInvalidate()

Если кому то интересно как рисовать на остатках конвы, то есть такой метод: поверхность на которой рисуем GameSurface наследуем от SurfaceView, в нужном нам месте вызываем: Canvas viewCanvas=GameSurface.getHolder().lockCanvas(); viewCanvas.clipRect(dirty); //выделяем область которую хотим перерисова...
Nyashka
19 мар 2013, 15:16
Форум: Графика и анимация
Тема: postInvalidate()
Ответы: 3
Просмотры: 3207

Re: postInvalidate()

В текущий момент так и делается. На каждую операцию рисования уходит пропорционально количеству перерисовываемых пикселей время, вплоть до 70 мс если рисуется весь экран (на моем телефоне, видавшем виды), попытка внедрить clip оборачивается провалом, потому что postInvalidate() очищает слой вьюва от...
Nyashka
19 мар 2013, 14:19
Форум: Графика и анимация
Тема: postInvalidate()
Ответы: 3
Просмотры: 3207

postInvalidate()

Мои приветствия всем кто зашел в эту тему. Столкнулся со следующей проблемой - После вызова postInvalidate() у вьюва, в методе onDraw() рисовать приходится на уже отчищенной конве. Хотелось бы начать рисовать на том что осталось от предыдущего кадра. Подходящего set'а, такого что бы можно было убрат...