Aditi K
Aditi K

Reputation: 1554

How to stop horizontal stretching particular column row in table layout?

As i am trying to use table layout in android page using stretch column property for table layout here is code

 <TableLayout
        style="@style/TableLayoutStyle"
        android:stretchColumns="1"
         ><------- Column property for column 2nd only  

        <!-- Lable Area -->

        <TableRow
            android:id="@+id/tblRwSpnLbl"
            style="@style/TableRowStyle" >

            <TextView
                android:id="@+id/lblCust"
                style="@style/LabelStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/lblCust" />

            <Spinner
                android:id="@+id/spnCust"
                style="@style/SpinnerStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:hint="@string/SelectCust" />
        </TableRow>

        <!-- Spinner Area -->

        <TableRow
            android:id="@+id/tblRwSpn"
            style="@style/TableRowStyle" >

            <TextView
                android:id="@+id/lblPros"
                style="@style/LabelStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/lblPros" />

            <Spinner
                android:id="@+id/spnPospect"
                style="@style/SpinnerStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:hint="@string/SelectProspect" />
        </TableRow>

        <!-- Text Area -->

        <TableRow
            android:id="@+id/tblRwEditTxt"
            style="@style/TableRowStyle" >

            <TextView
                android:id="@+id/lblCommo"
                style="@style/LabelStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/lblCommo" />

            <Spinner
                android:id="@+id/spnComodity"
                style="@style/SpinnerStyle"
                android:fontFamily="verdana,arial,helvetica" />
        </TableRow>

        <!-- Button Submit Section -->

        <TableRow
            android:id="@+id/tblRwOESubmit"
            style="@style/TableRowStyle"
            android:background="@drawable/border"
            android:gravity="center" >

            <!-- Lable Area -->

            <TextView
                android:id="@+id/lblCust1"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/strNull" />

            <TableLayout
                style="@style/TableLayoutStyle"
                android:background="@drawable/border" >

                <!-- Lable Area -->

                <TableRow
                    android:id="@+id/tblRwSpnLbl1"
                    style="@style/TableRowStyle"
                    android:background="@drawable/border"
                    android:gravity="left" >

                    <Button
                        android:id="@+id/btnEdit"
                        style="@style/ButtonStyle"
                        android:layout_margin="10dp"
                        android:fontFamily="verdana,arial,helvetica"
                        android:text="@string/edit" />

                    <Button
                        android:id="@+id/btnCancel"
                        style="@style/ButtonStyle"
                        android:fontFamily="verdana,arial,helvetica"
                        android:text="@string/cancel" />
                </TableRow>
            </TableLayout>
        </TableRow>

        <TableRow
            android:id="@+id/tblRwOESubmit1"
            style="@style/TableRowStyle"
            android:background="@drawable/border"
            android:gravity="center" >

            <Button
                android:id="@+id/btnEdit1"
                style="@style/ButtonStyle"
                android:layout_margin="10dp"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/edit" />

            <Button
                android:id="@+id/btnCancel1"
                style="@style/ButtonStyle"
                android:fontFamily="verdana,arial,helvetica"
                android:text="@string/cancel" />
        </TableRow>
    </TableLayout>

the last row is of buttons Edit & cancel want to show them at center of tht particular row but it shows me in stretched row in image (2) so want to stop stretching for that particular Row of buttuons such as shown in below image (3) how to achieve that as i tried hard to get them done but still not at the center (1)

enter image description here

  <style name="ButtonStyle" parent="@android:style/Widget.Button">
    <item name="android:textColor">#FFFFFF</item>
    <item name="android:textSize">18sp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:layout_width">85dp</item>
    <item name="android:layout_gravity">center_vertical</item>
    <item name="android:paddingLeft">10dp</item>
    <item name="android:layout_height">35dp</item>
    <item name="android:layout_marginLeft">10dp</item>
    <item name="android:paddingRight">10dp</item>
    <item name="android:layout_marginBottom">10dp</item>
    <item name="android:layout_marginTop">10dp</item>
    <item name="android:background">@drawable/press_btn_effct</item>
</style>

Upvotes: 1

Views: 1232

Answers (2)

Aditi K
Aditi K

Reputation: 1554

here i got solution for center button

 <TableRow
            android:id="@+id/tblRwOESubmit"
            style="@style/TableRowStyle"
            android:background="#bcbcbc"
            android:gravity="center" >

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="35dp"
                android:layout_marginLeft="5dp"
                android:layout_span="2"<-----used it with linear layout
                android:gravity="center" >

                <Button
                    android:id="@+id/btnSubmit"
                    style="@style/ButtonStyle"
                    android:layout_margin="10dp"
                    android:fontFamily="verdana,arial,helvetica"
                    android:text="@string/submit" />

                <Button
                    android:id="@+id/btnCancel"
                    style="@style/ButtonStyle"
                    android:fontFamily="verdana,arial,helvetica"
                    android:text="@string/cancel" />
            </LinearLayout>
        </TableRow>

Upvotes: 1

user3110424
user3110424

Reputation:

Use android:layout_column Attribute in your layout something like this. EDIT Feel free to change it as your requirement is.

<TableRow
        android:id="@+id/tblRwOESubmit1"
        style="@style/TableRowStyle"
        android:background="@drawable/border"
        android:gravity="center" >
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_column="1" // For placing button in 2nd column
            android:orientation="horizontal" >

        <Button
            android:id="@+id/btnEdit1"
            style="@style/ButtonStyle"
            android:layout_margin="10dp"

            android:fontFamily="verdana,arial,helvetica"
            android:text="@string/edit" />

        <Button
            android:id="@+id/btnCancel1"
            style="@style/ButtonStyle"
            android:fontFamily="verdana,arial,helvetica"
            android:text="@string/cancel" />
       </<LinearLayout>
    </TableRow>

Upvotes: 0

Related Questions