Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.63
Igor-vrn
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94
#1

Программирование интерфейса приложения на примере карточной игры - Программирование Android

14.12.2013, 23:39. Просмотров 2407. Ответов 8
Метки нет (Все метки)

Написав свое первое нехитрое приложение, я решил реализовать давнюю идею - написать карточную игру. Сразу встал вопрос - как наилучшим образом сделать интерфейс. Хочется сделать сразу все правильно, как оно должно быть (оптимально для ресурсов).
Посоветуйте, как реализовать сами карты на экране и их перемещения. Первое что приходит в голову - это унаследоваться от View или использовать виджет ImageView.
Не окажется ли приложение неоправданно тяжелым, если использовать 36 виджетов (ImageView) карт?
Если не виджетами, то какие еще есть варианты?

Чтобы не добавлять лишнюю тему, задам параллельно вопрос - как перемещать виджеты по экрану и как задать их размер в dp?
http://www.cyberforum.ru/android-dev/thread852155.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2013, 23:39
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Программирование интерфейса приложения на примере карточной игры (Программирование Android):

Реализация интерфейса приложения
Как можно реализовать показ таких новостей?...

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

Подскажите ресурсы по созданию интерфейса приложения
Интересует создание swipe меню, блоков (как в youtube и google+), добавление...

Программирование игры для Android
Сразу приношу извинения за то что спрашиваю в неподходяшем разделе (просто не...

Обсуждение карточной игры покер
Народ, у меня такой вопрос, а на этом сайте кто нибудь умееи играть в покер?

8
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.12.2013, 08:02 #2
36 элементов на экране - это еще не тяжело
Посмотри в примерах драг-энд-дроп
Можно полностью рисовать на сурфейсе/канвасе
0
Igor-vrn
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94
15.12.2013, 13:08  [ТС] #3
Цитата Сообщение от Tester64 Посмотреть сообщение
Можно полностью рисовать на сурфейсе/канвасе
такая идея была, но тогда это же будет монотонный холст, а мне надо будет обрабатывать события карт (свайп, перетаскивание).
использовать для карт ImageView или есть что-то полегче?
кстати, не нашел классического перемещения и задания размеров, как, например, сталкивался в VB
объект.left = ...
объект.width = ...
как здесь это реализовано?
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.12.2013, 14:53 #4
Цитата Сообщение от Igor-vrn Посмотреть сообщение
как здесь это реализовано
На порядок сложнее!
Это не винда. Здесь ВСЕ сложнее и непривычнее... привыкайте!
На холсте не обязательно статическая картинка - она обрабаытыает нажатия пальца, а значит Вы можете написать свой метод перетаскивания и анимации...
объект.width - ищите в сторону setWidth
0
Igor-vrn
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94
15.12.2013, 15:17  [ТС] #5
Цитата Сообщение от Tester64 Посмотреть сообщение
объект.width - ищите в сторону setWidth
с этим есть наработки. Но можно выставить не саму ширину, а ее минимум и максимум. Преимущество такого подхода опять же в голове пока не уложилось. Вероятно, опять же в угоду инвариантности под разные разрешения.
Цитата Сообщение от Tester64 Посмотреть сообщение
На холсте не обязательно статическая картинка
Доводилось сталкиваться с задачей: отрисовать график функции на экране (по трем парам точек). Делал через canvas (натянув его на весь экран setContentView()). Методом onDrow зарисовывается вся область монотонно, как одна картинка.
Наверное, я вас не понял сейчас

Подскажите, как бы вы на моем месте решили эту проблему. Отрисовка карт и их движение. Ваше мнение будет полезным для меня
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.12.2013, 16:09 #6
Цитата Сообщение от Igor-vrn Посмотреть сообщение
Методом onDrow зарисовывается вся область
Так оно и есть, но при касании/движении пальца ее можно перерисовать с другими параметрами...
Рисует довольно быстро - у меня в программе оклоло 100 обьектов мягко перерисовываются нескольколько раз в секунду.
0
Igor-vrn
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94
15.12.2013, 16:15  [ТС] #7
Цитата Сообщение от Tester64 Посмотреть сообщение
оклоло 100 обьектов
какие объекты вы используете?
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.12.2013, 17:14 #8
рисую обьекты! цветны круги, элипсы, линии, картинки из файлов, прямоугольники... Тоесть этого должно хватить для Ваших карт. Да и при рисовании Вашего графика Вы должны были уже подобное использовать... научитесь только обновлять картинку... В примерах должно быть подобное...
1
Igor-vrn
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94
15.12.2013, 17:27  [ТС] #9
Цитата Сообщение от Tester64 Посмотреть сообщение
Вы должны были уже подобное использовать
да, так и есть. график рисовал элементарными фигурами. На данный момент накопал оптимальный, на мой взгляд вариант. При загрузке игры все ресурсы карт перевести в bitmap и уже их использовать в ImageView. Буду работать.

Спасибо
0
15.12.2013, 17:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2013, 17:27
Привет! Вот еще темы с решениями:

Unity Разработка карточной игры
Здравствуйте! Занимаюсь разработкой карточной онлайн игры на андроид. Хочу...

Задача на создание карточной игры.
Здравствуйте. Собственно, само задание звучит, как "Написать программу, которая...

Вероятности для карточной игры
Привет. Высшую математику учил давно. Поэтому что то затупил. Задача такая у...

Создание карточной онлайн игры
Здравствуйте, я изучаю С++ по самоучителю, используя компилятор microsoft...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru