Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/21: Рейтинг темы: голосов - 21, средняя оценка - 4.76
7 / 7 / 2
Регистрация: 14.12.2013
Сообщений: 94

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

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

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

Чтобы не добавлять лишнюю тему, задам параллельно вопрос - как перемещать виджеты по экрану и как задать их размер в dp?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.12.2013, 23:39
Ответы с готовыми решениями:

Код для карточной игры
Добрых! Необходима ваша помощь. Изучаю пхп. Решил написать карточную игру "21" на этом языке. На данном этапе разработки, мне нужно...

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

Написание карточной игры с графикой
Добрый день! Уже и просили, есть карточная игра с графикой процесса какая-н для примера увидеть? Дурак или хоть покер с блэкджеком ...

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

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

Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.12.2013, 17:27
Помогаю со студенческими работами здесь

Паттерн для карточной игры
Доброго времени, собираюсь написать в Windows Forms карточную игру, пока остановился на модели MVC, но на мой взгляд этот шаблон...

GUI для карточной игры
Приветствую всех! Вот уже как месяц изучаю самостоятельно Python - немного разобрался с базовыми понятиями (переменные, встроенные...

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

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

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


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru