我有这个奇怪的问题。我有这些按钮,按钮的文本在某些操作时向下移动。例如,我有一个带有选择的微调器,其中一个选项使一些按钮不可见而其他按钮可见。当我选择这些时,所有可见的按钮都会向下移动文本。没有其他任何东西被移动,只是按钮上的文字。我已经尝试过这个1.5并且它工作正常,没有文本转移,但我有2.1的问题,我真的无法搞清楚。任何想法或帮助都会很棒。感谢。
这是文件的xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableLayout android:id="@+id/testpracHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
<!-- android:background="#ff0000"-->
<TableRow>
<Spinner android:id="@+id/testprac_menu"
android:layout_width="200px"
android:layout_height="wrap_content"></Spinner>
<View android:id="@+id/header_space_buffer"
android:layout_width="40px"
android:layout_height="30px"
android:gravity="center"></View>
<Button android:text="New"
android:id="@+id/newInterval"
android:layout_width="80px"
android:layout_height="wrap_content"></Button>
</TableRow>
</TableLayout>
<TableLayout android:id="@+id/bottomStruct"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<TableRow>
<Button android:layout_width="80px"
android:text="Replay"
android:id="@+id/replay"
android:layout_height="wrap_content"></Button>
<Button android:id="@+id/playInterval"
android:text="Play"
android:layout_width="160px"
android:layout_height="wrap_content"></Button>
<Button android:text="Submit"
android:id="@+id/submit"
android:layout_width="80px"
android:layout_height="wrap_content"></Button>
</TableRow>
</TableLayout>
</RelativeLayout>
当我使用testprac
微调器时,重放,新建和提交按钮变为不可见,播放按钮变为可见(这就是我想要的)。这似乎是问题似乎开始的时候。播放按钮的文字完全消失(可能转移到低视图),当我返回到另一个按钮时,我看到的问题如下所示。左边是使用微调器之前的问题,右边是问题。我不知道它是否只是导致这种情况的微调器。
答案 0 :(得分:0)
文本在内移动按钮?可能是一个错误。你在Android 2.2上试过吗?
答案 1 :(得分:0)
我认为在Spinner
内使用RelativeLayout
时存在错误。如果您尝试将根布局更改为LinearLayout
,则会看到它按预期工作。
原始布局的更改:
TableLayout
之间添加一个虚拟视图,将它们分隔开来
底部。注意:我在尝试解决this时发现了您的问题。似乎相似。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableLayout android:id="@+id/testpracHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<!-- android:background="#ff0000"-->
<TableRow>
<Spinner android:id="@+id/testprac_menu"
android:layout_width="200px"
android:layout_height="wrap_content"></Spinner>
<View android:id="@+id/header_space_buffer"
android:layout_width="40px"
android:layout_height="30px"
android:gravity="center"></View>
<Button android:text="New"
android:id="@+id/newInterval"
android:layout_width="80px"
android:layout_height="wrap_content"></Button>
</TableRow>
</TableLayout>
<View
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<TableLayout android:id="@+id/bottomStruct"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableRow>
<Button android:layout_width="80px"
android:text="Replay"
android:id="@+id/replay"
android:layout_height="wrap_content"></Button>
<Button android:id="@+id/playInterval"
android:text="Play"
android:layout_width="160px"
android:layout_height="wrap_content"></Button>
<Button android:text="Submit"
android:id="@+id/submit"
android:layout_width="80px"
android:layout_height="wrap_content"></Button>
</TableRow>
</TableLayout>
</LinearLayout>