Why is each element in the table row still taking the same amount of space

寵の児 提交于 2020-01-17 05:23:06

问题


Here is what I am getting when I run my application on my device

The part that I have problems with is the rows - with text, quote, and web. I dynamically inserted those rows into the scroll view at runtime. Here is my xml code that I used for layout inflating

<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/transparent" >

    <TextView
        android:id="@+id/stockView"
        android:text="TextView"
        android:layout_weight="2" />

    <Button
        android:id="@+id/stockQuote"
        style="?android:attr/buttonStyleSmall"
        android:text="@string/get_stock_quote" 
          android:layout_weight="1" />

    <Button
        android:id="@+id/webStock"
        style="?android:attr/buttonStyleSmall"
        android:text="@string/go_to_website"
          android:layout_weight="1"  />

</TableRow>

My question is with this code, why is each element still taking the same amount of space. I know that because I specified the text view's layout_weight to 2, it should take up half of the width with each button taking 1/4 of the total width. I know this isn't bc of weight sum as weight sum by default is 4 in this case. Does anyone know how i can get the text view to take up 1/2 of its parent's width?


回答1:


Check this it works..

<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent" >

<TextView
    android:id="@+id/stockView"
    android:layout_width="0dip"
    android:text="TextView"
    android:layout_weight="2" />

<Button
    android:id="@+id/stockQuote"
    android:layout_width="0dip"
    style="?android:attr/buttonStyleSmall"
    android:text="get_stock_quote"
    android:layout_weight="1" />

<Button
    android:id="@+id/webStock"
    android:layout_width="0dip"
    style="?android:attr/buttonStyleSmall"
    android:text="go_to_website"
    android:layout_weight="1"  />




回答2:


You should play with layout_span. Try to add android:layout_span="2" to your textview.

What is the equivalent of "colspan" in an Android TableLayout?



来源:https://stackoverflow.com/questions/26072354/why-is-each-element-in-the-table-row-still-taking-the-same-amount-of-space

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!