Nano Hash - криптовалюты, майнинг, программирование

Размещение изображения/растрового изображения?

Кто-нибудь из вас видел приложения-симуляторы бонга в Android? Как бы вы сделали это приложение? Например, я пытался сделать это с помощью макетов xml. Я разделил картинку и разместил ее по порядку и по сегментам, чтобы при нажатии на конкретную картинку срабатывала функция. Проблема в том, что на разных телефонах размер коллективных картинок либо выходит за пределы экрана, либо сжимается.

Я также пробовал использовать SurfaceViews с растровыми изображениями, чтобы каждое отдельное изображение могло принимать размер экрана и соответствующим образом настраивать их. У меня возникли проблемы с тем, чтобы изображения не ложились друг на друга, а вместо этого располагались по порядку, спускаясь по экрану. Я могу получить первые 2 просто отлично, обозначая Rect dst с начальной высотой, где заканчивается другая, но третья и четвертая не отображаются на экране. Например, я использовал

Rect dst = new Rect(0, 0, mWidth, mHeight/7 );

Для первого изображения, которое находится сверху. Затем для второго изображения

Rect dst = new Rect(0, mHeight/7, mWidth, mHeight/3 );

(mHeight и mWidth — это ширина и высота холста)

Не уверен, как разместить следующие 2 изображения под ними и друг под другом. Я старался

Rect dst = new Rect(0, mHeight/7+(mHeight/3), mWidth, mHeight/7); 

Однако это не сработало. Честно говоря, это выглядит очень просто, и я уверен, что это так, но я просто не могу заставить изображения работать так, как я хочу. Есть ли способ оставить изображение целиком и указать, что при выборе определенного места оно что-то делает (это будет работать на всех телефонах одинаково).

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

12.08.2011

Ответы:


1

Ну, вы можете разделить экран на области, такие как левая, верхняя, ширина, высота. Например. Район 1 (0,50,100,100) Район 2 (100,50,100,100).

И добавьте OnTouchListener и используйте его, чтобы получить сенсорные координаты и проверить, к какому региону он принадлежит. Я не уверен, что это хороший способ, но это выполнимо.

12.08.2011
  • Спасибо, это отличная рекомендация. Как вы думаете, оно будет правильно совпадать с изображением на каждом телефоне? 12.08.2011
  • Ну, вам придется использовать изображения разного размера и размещать их в разных папках с возможностью рисования. Если вы сохраните только одну копию в drawable-ldpi, то это изображение будет автоматически масштабироваться на больших телефонах. 13.08.2011
  • Круто, я посмотрю на это. Спасибо. 13.08.2011
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..