Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 22.10.2014
Сообщений: 3

Вложенный HorizontalScrollView в ScrollView с общим свайпом

22.10.2014, 19:49. Показов 1978. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть вложенный HorizontalScrollView в ScrollView. В общем суть проблемы - если начать скролить по горизонтали, то двигая палец вверх/вниз не отрывая от экрана ничего не происходит. Аналогично если начать скролить по вертикали, то двигая палец вправо/влево не отрывая от экрана ничего не происходит. Вопрос - как сделать чтоб скрол работал одновременно в двух элементах (по горизонтали и вертикали не поднимая палец)? Если никак - то вопрос следующий - как это обойти. Задача вполне тривиальная, но ответа в интернете не нашел
Миниатюры
Вложенный HorizontalScrollView в ScrollView с общим свайпом  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.10.2014, 19:49
Ответы с готовыми решениями:

Увеличить изображение из HorizontalScrollView
Я загружаю изображения из сети, после их помещаю в ArrayList и из него эти изображения достаю и помещаю в LinerLoyout в горизонтальном...

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

Вложенный запрос вернул больше одного значения Это запрещено, когда вложенный запрос следует после =, !=, <, <
Здравствуйте,проблема вот в чем,при добавление записи в таблицу,первая запись добавляется,а при добавление второй выдает что...

1
0 / 0 / 0
Регистрация: 22.10.2014
Сообщений: 3
22.10.2014, 21:43  [ТС]
Решение нашел(взял отсюда):
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
        final HorizontalScrollView hScroll = (HorizontalScrollView) findViewById(R.id.myHsView);
        final ScrollView vScroll = (ScrollView) findViewById(R.id.scroll);
 
        hScroll.requestDisallowInterceptTouchEvent(true);
        vScroll.setOnTouchListener(new View.OnTouchListener() { //outer scroll listener
            private float mx, my, curX, curY;
            private boolean started = false;
 
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                curX = event.getX();
                curY = event.getY();
                int dx = (int) (mx - curX);
                int dy = (int) (my - curY);
                switch (event.getAction()) {
                    case MotionEvent.ACTION_MOVE:
                        if (started) {
                            vScroll.scrollBy(0, dy);
                            hScroll.scrollBy(dx, 0);
                        } else {
                            started = true;
                        }
                        mx = curX;
                        my = curY;
                        break;
                    case MotionEvent.ACTION_UP:
                        vScroll.scrollBy(0, dy);
                        hScroll.scrollBy(dx, 0);
                        started = false;
                        break;
                }
                return true;
            }
        });
Если начинать свайпать по вертикали то по горизонтали тоже работет. Обратное в принципе можно допилить.

Но все же интересует есть ли более изящное решение проблемы? (Как по мне это сильно ресурсоемкое...)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.10.2014, 21:43
Помогаю со студенческими работами здесь

Вложенный запрос вернул больше одного значения Это запрещено, когда вложенный запрос следует после =, !=, <
Здравствуйте,проблема вот в чем,при добавление записи в таблицу,первая запись добавляется,а при добавление второй выдает что...

LinerLayout не полностью заполняет HorizontalScrollView при ширине и длине "match_parent"
LinerLayout не полностью заполняет HorizontalScrollView при ширине и длине &quot;match_parent&quot; При том если расположить эту же конструкцию...

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

WebView. Навигация свайпом
Здравствуйте! Есть WebView, статьи в который подгружаются из res/raw (n1.txt - n...txt), одна статья - один файл. Как свайпом осуществить...

Анимация следующая за свайпом
Имеется 3 элемента RecyclerView: 1 слева(якобы за экраном), 1 в центре(видимый) и 1 справа(тоже за экраном). Требуется сделать так, чтобы...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru