У меня возникла проблема с размещением GLSurfaceView между другими макетами, как выяснилось - с GLSurfaceView это невозможно. Поэтому я заменил GLSurfaceView на TextureView, но проблема не была решена.Как правильно разместить TextureView между другими макетами в Android?
У меня есть такая структура в моей основной раскладке:
<RelativeLayout android:id="@+id/mainEngineLayout"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:background="@android:color/transparent"
tools:context=".activities.MyActivity">
<com.myapplication.views.openGL.myGLTextureView
android:id="@+id/myGLTextureView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="66dp"
android:layout_marginRight="66dp"/>
<LinearLayout
android:id="@+id/leftButtonsLayout"
android:layout_height="fill_parent"
android:layout_width="66dp"
android:layout_alignParentLeft="true"
android:orientation="vertical"
android:background="#b7b8b0">
<ImageButton android:layout_width="66dp" .../>
<ImageButton android:layout_width="66dp" .../>
</LinearLayout>
<FrameLayout
android:layout_height="fill_parent"
android:id="@+id/rightLayout"
android:layout_width="wrap_content"
android:layout_alignParentRight="true"
android:orientation="vertical"
android:background="#b7b8b0">
<ImageButton android:layout_width="66dp" .../>
<ImageButton android:layout_width="66dp" .../>
</FrameLayout>
</RelativeLayout>
И, наконец, я хочу, чтобы получить результат, как:
Проблема заключается в том, что на некоторых устройствах, которые я получил проблему не с отображается TextureView вообще, так что есть черное поле между левой и правой макетами.
Например, он работает в моем Samsung S3 и эмуляторах, и он не работает должным образом на Xperia. Я думал, что причина может быть в разных темах, но я поставил тему в моем файле манифеста, как:
<application
android:allowBackup="true"
android:configChanges="orientation|screenSize"
android:theme="@style/CustomHoloThemeNoActionBar"
android:screenOrientation="sensorLandscape"
android:largeHeap="true">
<activity
android:theme="@style/CustomHoloThemeNoActionBar"
где "CustomHoloThemeNoActionBar" parent="@android:style/Theme.Holo.Light"
Не могли бы вы посоветовать, что может вызвать такие проблемы?
я думаю, что вы можете использовать Android: layout_toRightOf, чтобы получить макет право .. . and android: layout_toLeftOf, чтобы получить ваш макет, оставленный для ... заменить точки с идентификатором пыльника id –
В случае использования layout_toRightOf и layout_toLeftOf мне нужно разместить myGLTextureView после «левых» и «правильных» макетов, которые мне не нужны, Я хотел бы иметь TextureView в качестве первого макета, например фона. – XZen
android: gravity = "center" –