Question

I like to arrange the screen in 3 colomns and 3 rows in my android application. all nine squares should always be the same size. Each square should be able to contain a picture or video which should not get cut in size.

I already have a fully working solution, but this one just works on a specific screen size, because I hardcoded the layout_withd and layout_heigth attributes. I have worked with a Tablelayout containing three TableRows and each containing three LinearLayouts.

Can you please give me some advice how to start this in a proper way? It should work on all devices.

Thanks for help

Was it helpful?

Solution

Try this

<LinearLayout
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

    <LinearLayout android:orientation="vertical" android:layout_width="fill_parent"
                  android:layout_height="fill_parent" android:id="@+id/linearLayout2" android:layout_weight="1">
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
    </LinearLayout>

    <LinearLayout android:orientation="vertical" android:layout_width="fill_parent"
                  android:layout_height="fill_parent" android:id="@+id/linearLayout" android:layout_weight="1">
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
    </LinearLayout>

   <LinearLayout android:orientation="vertical" android:layout_width="fill_parent"
                  android:layout_height="fill_parent" android:id="@+id/linearLayout2" android:layout_weight="1">
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
                      android:layout_height="fill_parent" android:layout_weight="1"/>
    </LinearLayout>
</LinearLayout>

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top