我已经开始了一个布局,它应该是这样的:
但是我很难将3 ImageView(红色)移动到确切的位置。这是我能得到的:
现在我的问题是,我想将三个ImageView设置为可点击,以便路由到相应的屏幕,但这不能应用于我的布局,因为我只是使用translateY向下移动ImageView(蓝色)例如,60dp。真正的ImageView(蓝色)位置比ImageView(aqua)的实际显示高60dp。所以点击它不会影响任何事情。 这是我的xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/mypage_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/silver" >
<FrameLayout
android:id="@+id/frame"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/table_1"
android:layout_width="match_parent"
android:layout_height="180dp"
android:adjustViewBounds="true"
android:background="@color/green" />
<ImageView
android:id="@+id/btn_top_page"
android:layout_width="match_parent"
android:layout_height="50dp"
android:adjustViewBounds="true"
android:background="@color/maroon"
android:clickable="true" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RelativeLayout
android:id="@+id/relative_left"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toLeftOf="@+id/relative_center" >
<ImageView
android:id="@+id/btn_left"
android:layout_width="60dp"
android:layout_height="60dp"
android:clickable="true"
android:src="@color/aqua"
android:translationY="60dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/btn_left"
android:layout_centerHorizontal="true"
android:text="Left"
android:textColor="#FFFFFF"
android:translationY="65dp" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/relative_center"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp" >
<ImageView
android:id="@+id/btn_center"
android:layout_width="60dp"
android:layout_height="60dp"
android:clickable="true"
android:src="@color/fuchsia"
android:translationY="70dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/btn_center"
android:layout_centerHorizontal="true"
android:text="Center"
android:textColor="#FFFFFF"
android:translationY="75dp" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/relative_right"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toRightOf="@id/relative_center" >
<ImageView
android:id="@+id/btn_right"
android:layout_width="60dp"
android:layout_height="60dp"
android:clickable="true"
android:src="@color/gray"
android:translationY="60dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/btn_right"
android:layout_centerHorizontal="true"
android:text="Right"
android:textColor="#FFFFFF"
android:translationY="65dp" />
</RelativeLayout>
</RelativeLayout>
</FrameLayout>
这是代码应该做的吗? 任何帮助都可以。非常感谢你。
答案 0 :(得分:1)
尝试使用layout_marginTop而不是translateY。