Android Table Layout Alignment

前端 未结 3 907
南方客
南方客 2021-02-08 05:14

I am using Table Layout to display data as shown below. \"enter

What i want to do

相关标签:
3条回答
  • 2021-02-08 05:49

    My guess - change the layout_width and get rid of the gravity:

     <TextView
                android:id="@+id/textView2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_centerVertical="true"
                ...
                >
            </TextView>
    
    0 讨论(0)
  • 2021-02-08 05:57

    The easiest way I can think of is to wrap each TableRow content with a LinearLayout like this:

    <TableLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/tableLayout1"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >
    
            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="10dp" >
    
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent" >
    
                    <ImageView
                        android:id="@+id/place_category_icon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:contentDescription="ss"
                        android:paddingRight="10dp"
                        android:src="@drawable/ic_launcher" />
    
                    <TextView
                        android:id="@+id/textView2"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:layout_gravity="center"
                        android:text="230 kms"
                        android:textSize="16sp" >
                    </TextView>
                </LinearLayout>
            </TableRow>
    
            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="10dp" >
    
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent" >
    
                    <ImageView
                        android:id="@+id/place_category_icon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:contentDescription="ss"
                        android:paddingRight="10dp"
                        android:src="@drawable/ic_launcher" />
    
                    <TextView
                        android:id="@+id/textView2"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:layout_gravity="center"
                        android:text="Hill Station, Wild Life"
                        android:textSize="16sp" >
                    </TextView>
                </LinearLayout>
            </TableRow>
    
            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="10dp" >
    
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent" >
    
                    <ImageView
                        android:id="@+id/place_category_icon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:contentDescription="ss"
                        android:paddingRight="10dp"
                        android:src="@drawable/ic_launcher" />
    
                    <TextView
                        android:id="@+id/textView2"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:layout_gravity="center"
                        android:text="Summer 23-40°C, Winter 10-32°C"
                        android:textSize="16sp" >
                    </TextView>
                </LinearLayout>
            </TableRow>
    
            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="10dp" >
    
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent" >
    
                    <ImageView
                        android:id="@+id/place_category_icon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:contentDescription="ss"
                        android:paddingRight="10dp"
                        android:src="@drawable/ic_launcher" />
    
                    <TextView
                        android:id="@+id/textView2"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:layout_gravity="center"
                        android:text="Tippus Drop, Tippus Summer Residence, Brahmashram, Cycling, Paragliding"
                        android:textSize="16sp" >
                    </TextView>
                </LinearLayout>
            </TableRow>
        </TableLayout>
    

    And this is the result:

    layout

    Hope I correctly understood your requirements.

    0 讨论(0)
  • 2021-02-08 05:59

    Since a TableRow is pretty much a horizontally oriented LinearLayout, simply use the principles of weights to make the TextView fill up all the space after the ImageView. It means you'd have to change the rows to somewhat like this:

        <!-- no need to set width/height as those are implicitly enforced -->
        <TableRow
            android:id="@+id/tableRow2"
            android:paddingBottom="10dp" >
    
            <ImageView
                android:id="@+id/place_category_icon"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="ss"
                android:paddingRight="10dp"
                android:src="@drawable/icon_category" />
    
            <!-- width of '0' and weight of '1' will make this view fill up all remaining space -->
            <TextView
                android:id="@+id/textView2"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:layout_gravity="center_vertical"
                android:text="230 kms"
                android:textSize="16sp" />
    
        </TableRow>
    

    I've also removed/changed some superfluous attributes. Do mind that I just typed this directly in the browser - there may be the odd typo or tweak required.

    0 讨论(0)
提交回复
热议问题