我在scrollview中有一个textview。在scrollview下面有一个带有很多按钮的tablelayout。当我通过代码更改滚动视图的文本时,就像这样。
textViewInput.setText("Hello");
它使tablelayout中的按钮改变重力,使其中的文本保持对齐。为什么会这样?我确保textviewinput不是空的。
这是xml。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/TableLayout1"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="10dp"
android:background="#DDD"
android:orientation="vertical" >
<ScrollView
android:background="#DDD"
android:id="@+id/scrollView"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout
android:id="@+id/RelativeLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textViewInput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:gravity="left"
android:textColor="#000"
android:text="_" />
<TextView
android:id="@+id/textViewResult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="5dp"
android:gravity="right"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#000" />
</RelativeLayout>
</ScrollView>
</LinearLayout>
<TableLayout
android:id="@+id/TableLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" >
<TableRow
android:id="@+id/TableRow07"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:gravity="center_vertical"
android:weightSum="5" >
<Button
android:id="@+id/Button06"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_root"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/bAsin"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/bAcos"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:gravity="center"/>
<Button
android:id="@+id/batan"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:gravity="center" />
</TableRow>
<TableRow
android:id="@+id/TableRow06"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/Button04"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_pi"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/Button03"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/_sin"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/Button02"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_cos"
android:gravity="center" />
<Button
android:id="@+id/Button01"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/_tan"
android:gravity="center"/>
</TableRow>
<TableRow
android:id="@+id/TableRow05"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/bPow"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_pow"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/blpar"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/_lpar"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/brpar"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_rpar"
android:gravity="center" />
<Button
android:id="@+id/bdiv"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/_div"
android:gravity="center" />
</TableRow>
<TableRow
android:id="@+id/TableRow04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/b7"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_7"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/b8"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/_8"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/b9"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_9"
android:gravity="center" />
<Button
android:id="@+id/bmul"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/_times"
android:textStyle="bold"
android:gravity="center" />
</TableRow>
<TableRow
android:id="@+id/TableRow03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/b4"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_4"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/b5"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/_5"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/b6"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_6"
android:gravity="center" />
<Button
android:id="@+id/bsub"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/_minus"
android:gravity="center"/>
</TableRow>
<TableRow
android:id="@+id/TableRow02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/b1"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_1"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/b2"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/_2"
android:textColor="@android:color/primary_text_light"
android:gravity="center" />
<Button
android:id="@+id/b3"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_3"
android:gravity="center"/>
<Button
android:id="@+id/badd"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/_plus"
android:gravity="center"/>
</TableRow>
<TableRow
android:id="@+id/TableRow01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:weightSum="5" >
<Button
android:id="@+id/b0"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:text="@string/_0"
android:textColor="@android:color/primary_text_light"
android:gravity="center"/>
<Button
android:id="@+id/bPoint"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:gravity="center"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:text="@string/dot"
android:textColor="@android:color/primary_text_light" />
<Button
android:id="@+id/bClear"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.2"
android:gravity="center"
android:text="@string/clear" />
<Button
android:id="@+id/bEnter"
style="@style/white_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1.4"
android:text="@string/enter" />
</TableRow>
</TableLayout>
</RelativeLayout>
答案 0 :(得分:1)
因为
<TextView
android:id="@+id/textViewInput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
...
使用wrap_content
表示您TextView
的宽度和高度将根据其内容而变化,您在调用setText()
时会修改该内容。
尝试使用固定宽度和高度,如下所示:
<TextView
android:id="@+id/textViewInput"
android:layout_width="match_parent"
android:layout_height="30dp"
...