У меня есть простое тестовое приложение, над которым я работаю.Позже это будет импортировано в более крупное приложение, но я хочу, чтобы оно сначала заработало, прежде чем объединить его с реальным приложением.Имеет 3 линейных разметки.Первый - это mainLayout, а два других - child1 и child2 из mailLayout.В дочернем открытии я помещаю GLSurfaceview, а child2 - в текстовое представление.
В glSurfaceView есть пользовательский рендер, который берет 2-мерное изображение и рисует на экране в течение 7 секунд (растягивая его чуть-чуть каждый onDrawFrame).Через 7 секунд следующее изображение должно быть загружено тем же рендерером и отображено на экране.это повторяется бесконечно.
Первое изображение отображается правильно.После первых семи секунд я удаляю child1 и child2 из mainlayout.Затем я загружаю второе изображение и создаю текстуру.Затем я добавляю child1 и child2 обратно.
Проблема, которую я вижу, заключается в том, что на экране ничего не отображается.Также не вызывается ни один из методов Renderers (onDrawFrame, onSurfaceChanged или onSurfaceCreated).
Если я не удаляю child1 и child2 из основного слоя, второе изображение отображается правильно.Причина, по которой мне нужно удалить все дочерние элементы из mainlayout, заключается в том, что в реальном приложении могут быть наложенные макеты / представления, которые пользователь мог перетащить на экран.Их нужно удалить перед следующим изображением.
Что я здесь не так делаю?Спасибо за вашу помощь.