Я пытаюсь разделить мой экран на разные размеры, используя четыре линейных макета в линейном макете. Когда я добавляю веса в свой проект, на экране показывается, что макет разделен на 4 четные части в предварительном просмотре макета. Но когда я запускаю приложение на устройстве или эмуляторе, представления не отображаются. Но когда я удаляю весовые атрибуты, отображаются виды.
Я использовал примеры кода, которые успешно использовали свойство веса, но не работают в моей программе. Я также программно получил ширину и высоту всех вложенных представлений в коде. Они не нулевые, поэтому они есть, но просто не видны. Я попытался добавить свойства, такие как видимость = true и focusable = true, но безрезультатно. Я добавил drawView в вид, используя этот код
DrawView drawView = new DrawView();
ViewGroup mainLayout = (ViewGroup) findViewById(R.id.main);
mainLayout.addView(drawView);
DrawView - это класс, расширяющий View, и я вызываю методы canvas.drawLine () и canvas.drawText () для рисования на экране
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:weightSum="4">
<LinearLayout
android:visibility="visible"
android:focusable="true"
android:id="@+id/l1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/colorAccent"
android:orientation="horizontal"></LinearLayout>
<LinearLayout
android:visibility="visible"
android:id="@+id/l2"
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@color/colorBtnText"></LinearLayout>
<LinearLayout
android:id="@+id/l3"
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@color/colorBtnBackground"></LinearLayout>
<LinearLayout
android:id="@+id/l4"
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@color/colorLbl"></LinearLayout>
</LinearLayout>
Ничто из того, что я пробовал выше, не сработало. Я потратил немало времени на это и был бы очень признателен за отзывы.