Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
#1

Размещение кнопки на большой картинке - Программирование Android

28.11.2015, 16:56. Просмотров 329. Ответов 9
Метки нет (Все метки)

Добрый вечер!
Подскажите идею, как реализовать следующее:

Есть картинка размером 3000 х 3000, она отображается в 100% масштабе. Есть две кнопки, у одной координаты верхнего левого угла в 0 х 0, у другой в 2800 х 2800. Как разместить кнопки на картинке, чтобы программно прокручивая картинку можно было найти эти кнопки?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2015, 16:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Размещение кнопки на большой картинке (Программирование Android):

Размещение картинки на картинке - HTML, CSS
Здравствуйте. Такая проблема: надо на картинке разместить другую картинку, при чём первая должна быть либо фоном, либо просто растянута на...

Размещение блоков по центру (как на картинке) - HTML, CSS
Короче... начал пилить сайт, есть парочка вопросов... 1. хочу сделать как на картинке 2. хочу чтобы слой был ровно по...

Круглые кнопки на картинке - C#
Нужно создать картинку, с кнопками на ней. Кнопки не имеют углов и пронумерованы. При нажатии на кнопки на форме должен появляться текст,...

Размещение кнопки - HTML, CSS
Доброго дня всем. Что не так делаю с тегом <button>, чтобы кнопку разместить где угодно? <html> <head> ...

Размещение кнопки вход - HTML, CSS
Как сделать чтобы кнопка вход была размещена как на изображению? <form action="testreg.php" method="post"> <input name="login"...

Размещение кнопки на STATIC окне - C++ WinAPI
При определенном событии главное окно "скрывается" и создается окно класса Static. .... // Прячем главное окно ...

9
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
28.11.2015, 18:43 #2
1) RelativeLayout.
для первой кнопки android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true".
для второй кнопки android:layout_alignParentBottom="true" android:layout_alignParentEnd="true" android:layout_alignParentRight="true"

2) обработайте Touch на картинке. там и зададите координаты где надо клик ловить.
0
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
28.11.2015, 20:55  [ТС] #3
т.е. не использовать кнопки а рисовать? Проблема в том, что это как бы интерактив с картинкой, все объекты должны быть на своих местах.
0
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
28.11.2015, 21:46 #4
по мне так гораздо проще взять картинку, и написать некую таблицу с координатами. и потом обрабатываем OnTouch на картинку, и по таблице определяем в какой обьект попали.

другой вопрос, что если надо как-то реагировать на нажатие, типа цвет менять или перемещать кнопку, тогда это должен быть другой обьект. и это может быть кнопка.
0
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
28.11.2015, 23:31  [ТС] #5
Цитата Сообщение от bastrakov Посмотреть сообщение
написать некую таблицу с координатами
Проблема такая: есть вот большая картинка, на неё (поверх), должны были накладываться кнопки и мелкие картинки. Но я не могу наложить мелку картинку за областью экрана, т.е. за пределами, например, 1280х720. Т.е. у картинки нет привязанности к картинке, вот как. С кнопками аналогично. Вы предложили таблицу - а как её реализовывать? (можно просто алгоритмом вкратце или что нужно гуглить, запросы)
0
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
29.11.2015, 05:38 #6
проблему не понял.
проблема в том, что большая картинка не влезает в экран?
что означает фраза "у картинки нет привязанности к картинке"?
0
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
29.11.2015, 14:32  [ТС] #7
Картинка "экран" - то как всё выглядеть должно. Примерно. Значит красным - размер экрана телефона. Чёрным - большая картинка (допустим 3000 х 3000) при 100% масштабе. Зелёным - мелкая картинка, которая находится где-то на большой картинке. Синим - кнопка. хотя можно и только картинки, но хотелось бы там кнопку (Button). Так вот, вопрос заключался в том, чтобы "как разместить синюю кнопку и зелёную картинку на чёрной картинке, если размер экрана должен быть так, как показано на рисунке."
0
Миниатюры
Размещение кнопки на большой картинке  
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
29.11.2015, 15:03 #8
интересная задачка. понятия не имею, как Вы с этим жить будете, но вот Вам решение, которое Вы искали.

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

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:paddingBottom="@dimen/activity_vertical_margin"
                android:paddingLeft="@dimen/activity_horizontal_margin"
                android:paddingRight="@dimen/activity_horizontal_margin"
                android:paddingTop="@dimen/activity_vertical_margin"
                tools:context=".MainActivity"
    >
 
    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true">
 
        <HorizontalScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fillViewport="true">
 
            <RelativeLayout
android:background="@mipmap/ic_launcher"
                android:layout_width="3000dp"
                android:layout_height="3000dp"
                >
 
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/hello_world"/>
 
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="200dp"
                    android:layout_marginTop="400dp"
                    android:text="btn-200-400"/>
 
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="400dp"
                    android:layout_marginTop="700dp"
                    android:text="btn-400-700"/>
 
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="700dp"
                    android:layout_marginTop="1600dp"
                    android:text="btn-700-1600"/>
 
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="1300dp"
                    android:layout_marginTop="2000dp"
                    android:text="btn-1300-2000"/>
 
            </RelativeLayout>
        </HorizontalScrollView>
    </ScrollView>
 
</RelativeLayout>
1
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
30.11.2015, 08:19  [ТС] #9
Сейчас я проверю. А этот код предупреждает тот момент, что экран будет (может) двигаться (скроллы) ?
Просто у меня уже была такая забавная ситуация с AbsoluteLayout (ну мало ли).

Добавлено через 42 секунды
а, там ещё такой момент: скролы сделаны программно, т.е. и скролов по сути не существует. а есть ScrollBy\ScrollTo

Добавлено через 4 минуты
Да, вот была вчера у меня идея по поводу размера layout'а, сделать его не "match_parent", а задать размеры максимальные картинке. Думаю, что такая идея сработает (ещё проверяю).

Добавлено через 1 час 0 минут
Нет, не знаю точно, но такой код не сработал вот в каком смысле: одна кнопка и зелёная морда анроида на всём остальном, аж страшно стало.

Добавлено через 3 часа 3 минуты
uppp

Добавлено через 13 часов 2 минуты
задача не решена
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
30.11.2015, 14:58 #10
Nullik, у меня получилось вот так:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:background="#4d0616">
 
    <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <FrameLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <ImageView
                android:layout_width="5000dp"
                android:layout_height="5000dp"
                android:src="@mipmap/ic_launcher"
                android:scaleType="fitXY"/>
            <Button
                android:layout_width="wrap_content"
                android:layout_height="50dp"
                android:text="BUTTON"
                android:layout_gravity="right|bottom"/>
        </FrameLayout>
 
    </HorizontalScrollView>
 
</ScrollView>
Картинка большая, кнопка в правом нижнем углу.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2015, 14:58
Привет! Вот еще темы с ответами:

Отловить нажатие левой кнопки мыши на картинке - DirectX
Всем Привет! я только начал изучать directx, у меня появился вопрос : Итак, я решил сделать вывод на экран картинки и по нажатию левой...

Размещение кнопки слева от таблицы справа - JavaScript
Не получается разместить кнопку в другой таблице от другой таблицы. В архиве фото ,какое я хочу получить, и мой код , который не может...

Нажатие каждой кнопки приводит к ее сокрытию и показу ранее скрытой кнопки - Delphi
Нажатие каждой кнопки приводит к ее сокрытию и показу ранее скрытой кнопки. При этом номер (название) ранее скрытой кнопки отображается в...

Пропал стандартный стиль объёмной кнопки WPF (кнопки теперь плоские) - C# WPF
Пропал стиль стандартных WPF кнопок. Кнопки теперь только плоские. Что сделать, чтобы вернуть как было? В инете нашёл только один...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
30.11.2015, 14:58
Ответ Создать тему
Опции темы

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