Search code examples
androidtabletsmartphone

Tablet Android application resolution is breaking in smartphone


I have created an android application for tablet, the application is having big table with 15 columns. The application is working fine and the table seems okay in tablet. The issue is that when I open the application in smart phone the table resolution is breaking.

I have seems many application which works fine in both smartphone and tablet. I am new to android programming, Can anyone please tell me some solution how to achieve the resolution issue. Do I need to create separate application for smartphone and tablet

enter image description here

xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/oil" >

  <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:layout_margin="10dp"
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dip"
            android:layout_marginRight="10dip"
            android:orientation="horizontal" >

            <EditText
                android:id="@+id/EditText03"
                style="@style/EditTextStyleWhite"
                android:layout_width="0dp"
                android:layout_height="30dp"
                android:layout_marginEnd="5dp"
                android:layout_weight="50"
                android:cursorVisible="true"
                android:ems="10"
                android:hint="@string/password"
                android:inputType="textPassword"
                android:paddingEnd="10dp"
                android:paddingStart="10dp"
                android:textSize="14sp" />

            <EditText
                android:id="@+id/EditText02"
                style="@style/EditTextStyleWhite"
                android:layout_width="0dp"
                android:layout_height="30dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:layout_weight="50"
                android:cursorVisible="true"
                android:ems="10"
                android:hint="@string/password"
                android:inputType="textPassword"
                android:paddingEnd="10dp"
                android:paddingStart="10dp"
                android:textSize="14sp" >

                <requestFocus />
            </EditText>

            <EditText
                android:id="@+id/EditText01"
                style="@style/EditTextStyleWhite"
                android:layout_width="0dp"
                android:layout_height="30dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:layout_weight="50"
                android:cursorVisible="true"
                android:ems="10"
                android:hint="@string/password"
                android:inputType="textPassword"
                android:paddingEnd="10dp"
                android:paddingStart="10dp"
                android:textSize="14sp" />

            <EditText
                android:id="@+id/password"
                style="@style/EditTextStyleWhite"
                android:layout_width="0dp"
                android:layout_height="30dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:layout_weight="50"
                android:cursorVisible="true"
                android:ems="10"
                android:hint="@string/password"
                android:inputType="textPassword"
                android:paddingEnd="10dp"
                android:paddingStart="10dp"
                android:textSize="14sp" />

            <EditText
                android:id="@+id/password6"
                style="@style/EditTextStyleWhite"
                android:layout_width="0dp"
                android:layout_height="30dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:layout_weight="50"
                android:cursorVisible="true"
                android:ems="10"
                android:hint="@string/password"
                android:inputType="textPassword"
                android:paddingEnd="10dp"
                android:paddingStart="10dp"
                android:textSize="14sp" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="top"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="10dip"
            android:orientation="horizontal"
            android:paddingTop="5dp" >
        </LinearLayout>

        <TableLayout
            android:id="@+id/header"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:layout_marginRight="2dp"
            android:background="@android:color/black" >

            <TableRow>

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:layout_height="30dp"
                    android:background="@android:color/white"
                    android:gravity="center"
                    android:text="Person Names"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Employee No"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Description"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Result in Entra"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Current Status"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Image Upload"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Remark"
                    android:textColor="@android:color/black" />

                <TextView
                    android:layout_margin="1dp"
                    android:layout_weight="1"
                    android:background="@android:color/white"
                    android:layout_height="30dp"
                    android:gravity="center"
                    android:text="Actions"
                    android:textColor="@android:color/black" />
            </TableRow>
        </TableLayout>


    </LinearLayout>

</LinearLayout>

Solution

  • You can always use the 'values' folder to set the dimensions and accordingly to the layout for different screen size devices. And you can also use the 'layout' folder with different screen sizes and create your layout accordingly.

    for more information you can use layout folders like this,

     res/layout/my_layout.xml             // layout for normal screen size ("default")
     res/layout-small/my_layout.xml       // layout for small screen size
     res/layout-large/my_layout.xml       // layout for large screen size
     res/layout-xlarge/my_layout.xml      // layout for extra large screen size
     res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation