Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754

При смене ориентации экрана накладываются фрагменты

08.08.2015, 11:16. Показов 2218. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Юзаю Android.Support.V4.App.Fragment, вроде бы все нормально. При переключении из меню фрагменты скрываю отправляя в "стек" а кликнутый показываю.
Проблема в том что при перевороте устройства (смена ориентации) все что есть фрагменты налаживаются друг на друга((( при этом в коде все фрайгменты кроме выбранного по прежнему имеют fragment.IsVisible == false
Как с этим бороться? Кто сталкивался?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.08.2015, 11:16
Ответы с готовыми решениями:

Анимация при смене ориентации экрана
У меня есть анимация на фон с плавной сменой фона, но пир повороте анимация стартует занаво, из-за чего то выглядит ужастно ...

Блокировка навигации при смене ориентации экрана
Доброго времени суток.Прошу помощи у знающих: Приложение использует Navigation Drawer Activity.Стоит задача реализовать следующий...

Потеря вывода при смене ориентации экрана
Калькулятор вывел результат в компонент textview. Стоит поменять ориентацию экрана и весь результат подсчета пропадает. :(

5
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
08.08.2015, 13:21
Если честно то перечитал 5раз и не понял что у тебя не так и в чем проблема.... скрины в студию... пожалуйста, и более точное описание проблемы, можно с кусочками кода...
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
09.08.2015, 11:25  [ТС]
Цитата Сообщение от jenokizm Посмотреть сообщение
Проблема в том что при перевороте устройства (смена ориентации) все что есть фрагменты налаживаются друг на друга
Не понимаю чего тут непоятного? Переворачиваю устройство и все накладывается слоями!
Положи на свой стол тетрадку а сверху ручку. Увидишь наложение, будет видна и ручка и тетрадка. вот это и будут фрагменты_)

Добавлено через 1 минуту
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
mFragment1 = new Fragment1();
            mFragment2 = new Fragment2();
            mFragment3 = new Fragment3();
 
            mStackFragments = new Stack<SupportFragment>();
 
            var trans = SupportFragmentManager.BeginTransaction();
            trans.Add(Resource.Id.fragmentContainer, mFragment3, "Fragment3");
            trans.Hide(mFragment3);
 
            trans.Add(Resource.Id.fragmentContainer, mFragment2, "Fragment2");
            trans.Hide(mFragment2);
 
            trans.Add(Resource.Id.fragmentContainer, mFragment1, "Fragment1");
            trans.Commit();
 
            mCurrentFragment = mFragment1;
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private void ShowFragment (SupportFragment fragment)
        {
            if (fragment.IsVisible){
                return;
            }
 
            var trans = SupportFragmentManager.BeginTransaction();
 
            trans.SetCustomAnimations(Resource.Animation.slide_in, Resource.Animation.slide_out, Resource.Animation.slide_in, Resource.Animation.slide_out);
 
            fragment.View.BringToFront();
            mCurrentFragment.View.BringToFront();
 
            trans.Hide(mCurrentFragment);
            trans.Show(fragment);
 
            trans.AddToBackStack(null);
            mStackFragments.Push(mCurrentFragment);
            trans.Commit();
 
            mCurrentFragment = fragment;
        }
0
33 / 33 / 25
Регистрация: 06.01.2012
Сообщений: 142
10.08.2015, 09:28
При смене ориентации, изменяется рабочая область на устройстве, поэтому если хотите, чтобы ничего не налаживалось при смене ориентации, необходимо отдельно создавать файл ресурса для горизонтальной ориентации в папке layout-land. Я думаю вы этого не делали, поэтому и происходит наложение фрагментов.
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
10.08.2015, 10:13  [ТС]
Цитата Сообщение от PaDyra Посмотреть сообщение
необходимо отдельно создавать файл ресурса для горизонтальной ориентации в папке layout-land
А ничего что у меня там такая же верстка будет? Поможет?
пс не вижу в этом смысла, у меня в динамике все создается и рассчитывается под экран. Все выглядит хорошо если бы не накладывались( *у меня крособразная верстка так сказать)
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
11.08.2015, 11:08  [ТС]
Вопрос решен. Оказывается при перевороте он Креате заного все создавал а старое не удалял(
отключил пересоздание
C#
1
ConfigurationChanges = Android.Content.PM.ConfigChanges.ScreenSize | Android.Content.PM.ConfigChanges.Orientation
а там где надо пересоздал сам
C#
1
2
3
4
5
public override void OnConfigurationChanged(Android.Content.Res.Configuration newConfig)
        {
            base.OnConfigurationChanged(newConfig);
            //тут пересоздание вью
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.08.2015, 11:08
Помогаю со студенческими работами здесь

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

Выбрасывает из приложения при смене ориентации экрана
Здравствуйте. Следующая проблема. Создал папку layout-land в папке res. И при добавлении туда вот этого файла xml: &lt;LinearLayout...

Задний фон при смене ориентации экрана
Здравствуйте! Мне надо чтобы фон не сжимался так, а как в HTML оптимизировал под размер экрана... Заранее спасибо! (Приложение и картинка...

При смене ориентации закрывается Activity
Из главной активити запускаю вторую. При смене ориентации срабатывает onDestroy(), потом onCreate(), а потом снова onDestroy() и...

Потеря потока при смене ориентации
Здравствуйте! У меня приложения связывается по Bluetooth с другими устройствами. Всё работает хорошо. НО! Если перевернуть устройство и...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru