我有一个包含2个视图的LinearLayout。当我在运行时移动上部视图时,第二个视图不会相应移动,我似乎无法找到解决方案。有人可以帮忙吗?
这是我现在正在使用的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="test.itayrabin.toolbar2.TestActivity" android:orientation="vertical">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="101dp"
android:onClick="translate"
android:layout_gravity="center_horizontal" />
<TextView
android:id="@+id/text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/lipsum"
android:onClick="back"/>
它只是一个带有按钮和textView的LinearLayout。我将按钮的onClick设置为降低它的方法,而textView的onClick只是一种将所有内容恢复到原始状态的方法。
这是翻译方法:
public void translate(View view) {
translationY +=10;
button.setTranslationY(translationY);
}
我尝试将根布局设为相对布局,但没有帮助。
我尝试设置textView的填充
我尝试将textView的顶部设置为Button的底部。
这些都没有奏效。 有谁知道如何解决它?
答案 0 :(得分:0)
像translationX / Y /,rotationX / Y这样的ViewProperties不会影响视图层次结构的布局。
如果您想要翻译两个视图,您还必须翻译第二个视图。
或者你可以在第一个视图的顶部添加一些边距,这会将两个视图向下推。