Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
16 / 16 / 13
Регистрация: 08.11.2014
Сообщений: 119

Unity3D. Не отображается контент в Scroll View на Android

08.04.2019, 20:23. Показов 2921. Ответов 9

Студворк — интернет-сервис помощи студентам
0


Сделал сцену, где отображаются все уровни игры, для этого я сделал скрипт, где создаю список все сцен(уровней), которые заполняются через инспектор(https://prnt.sc/n96sy0).

Каждый элемент списка, это префаб, кнопка с текстом, текст - это название сцены. Используется стандартный Scroll View (https://unity3d.com/ru/learn/t... croll-view).

Проблема в том, что на андроиде не отображается список уровней, хотя в самом редакторе все норм. На 1 ом скрине, запущенная сцена.

Через Unity Remote все норм.

Вот скрин с телефона, там отображается только 1 дефолтный префаб - https://prnt.sc/n96x7k

Код, который запускается при загрузке сцены:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class ListScenes : MonoBehaviour
{
    public GameObject viewLevel; //Префаб, который отображается в content
    public List<Object> scenes; //Список сцен
    private GameObject content; //Объект, в который будут добавляться префабы
    void Start() {
        content = Helper.FindInChildren(gameObject, "Content");
 
        addScenesToList();
    }
 
    private void addScenesToList() {
        foreach (Object scene in scenes) {
            GameObject obj = Instantiate(viewLevel, content.transform); //Создаю префаб и кидаю его в content
            Helper.FindInChildren(obj, "Text").GetComponent<Text>().text = scene.name; //Ищу в своем префабе компонент Text и меняю текст на название сцені
            obj.GetComponent<Button>().onClick.AddListener(() => { SceneManager.LoadScene(scene.name, LoadSceneMode.Single); }); //Вешаю свой обработчик нажатия
        }
    }
}
Версия Unity последняя.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.04.2019, 20:23
Ответы с готовыми решениями:

Scroll view
вопрос элементарный. Вот я создал scroll view, заполнил его. (информация не помещается на экране (уходит вниз экрана) и должна ездить...

Scroll View не скрывает объекты с материалом
Есть Scroll View,скидаю на него 2 абсолютно одинаковых объекта,не важно каких,одно отличие,на одном есть материал,на другом нету,при...

Scroll View+Vertical Layout Group
https://youtu.be/aXPG38a1hOU Как сделать чтобы при любом разрешении показывалась только 8-9 объектов?

9
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
08.04.2019, 21:17
Цитата Сообщение от arper Посмотреть сообщение
public List<Object> scenes; //Список сцен
не делай так никогда.

Может даже причина в этом, но я в этом не уверен, у тебя в Build Settings все сцены выставлены? https://prnt.sc/n9849d
0
16 / 16 / 13
Регистрация: 08.11.2014
Сообщений: 119
08.04.2019, 21:21  [ТС]
public List<Object> scenes; //Список сцен
Почему так нельзя делать?
Я также делал обычным массивом Object[], но это не решало проблему

Да, сцены все есть https://prnt.sc/n98052
0
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
08.04.2019, 21:24
Цитата Сообщение от arper Посмотреть сообщение
public List<Object> scenes; //Список сцен
Ну во первых, код становиться менее читабельным, т.к. все время будешь искать что и как делаеться, а во вторых, элементарно можешь случайно не тот объект туда поставить, и потом пол дня искать ошибку в коде.

Попробуй в логи зайти, может там что интересного найдешь.

Еще может быть такое, что у тебя там старый апкшник стоит, а новый со всеми сценами не хочет ставиться, но ты этого не замечаешь. Часто такое бывало.
0
16 / 16 / 13
Регистрация: 08.11.2014
Сообщений: 119
08.04.2019, 21:47  [ТС]
Продебажил через андроид студио, вот что выбило, при открытии списка

04-08 21:45:41.065 2042-2057/? E/Unity: NullReferenceException: Object reference not set to an instance of an object
at ListScenes.addScenesToList () [0x00047] in <a04446634c584113b3e2a6be1f1b33a9>:0
at ListScenes.Start () [0x00016] in <a04446634c584113b3e2a6be1f1b33a9>:0

(Filename: <a04446634c584113b3e2a6be1f1b33a9> Line: 0)

Но как список может быть пустым...

Не понимаю - "Еще может быть такое, что у тебя там старый апкшник стоит, а новый со всеми сценами не хочет ставиться, но ты этого не замечаешь. Часто такое бывало."
0
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
08.04.2019, 21:52
Цитата Сообщение от arper Посмотреть сообщение
Не понимаю
Ты через Build and Run?
Если да то смотри консоль нет ли там ошибок.

Если нет, то как?

Цитата Сообщение от arper Посмотреть сообщение
Но как список может быть пустым..
Возможно таки дело в <Object>?

И стоп, может исключения вылетает из-за
Цитата Сообщение от arper Посмотреть сообщение
content = Helper.FindInChildren(gameObject, "Content");
Добавь его в инспекторе, предварительно сделав

C#
1
2
[SerializedField]
private GameObject content;
1
16 / 16 / 13
Регистрация: 08.11.2014
Сообщений: 119
08.04.2019, 21:54  [ТС]
Ну я собираю apk, кидаю на телефон и там устанавливаю (Build)
Ошибка из-за того, что scenes == null

content = Helper.FindInChildren(gameObject, "Content"); тут ни причем
0
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
08.04.2019, 21:56
arper, Обновил ответ.
0
 Аватар для 1max1
3362 / 1775 / 1028
Регистрация: 26.10.2018
Сообщений: 5,204
08.04.2019, 22:09
Я конечно не уверен, но мне кажется для листа нужен экземпляр:
C#
1
public List<Object> scenes = new List<Object>();
0
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
08.04.2019, 22:13
1max1, да, все и такое может быть, всегда по привычке пишу, но как-то странно, список в инспекторе заполняю, а в коде под него даже память не выделена.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.04.2019, 22:13
Помогаю со студенческими работами здесь

Добавить scroll view в собственный вью
Я создал класс, наследуемый от вью, добавил его в разметку. Теперь я хочу программно при создании моего вью добавить в него скролл вью....

Создание MMORPG (C#, Unity3d, Network View, PHP, MySQL)
Здравствуйте. Решил создать ММОРПГ игру. Присмотрелся к этим компонентам: Основное программирование - C# База Данных - MySQL ...

Android Listview Scroll
Здравствуйте, я написал код ведьма может загрузить JSON и шоу ListView (он работает идеально), но моя проблема: когда я пытаюсь прокрутить...

Не отображается контент
Есть код с подключением к базе данных и запросом на вывод информации из бд. Но вместо того что бы вывести какую лиюо ошибку или информацию...

Не отображается контент на сайте
Всем доброго дня! На этом сайте при просмотре с пк больше половины контента не отображается. В мобильной версии все нормально. ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru