根据背景放置一个按钮

时间:2013-10-18 17:45:11

标签: android xml

我有一个看起来像这样的活动:

activity ui

当我在模拟器上运行应用程序时,图钉没有超过便利贴,所以我知道不同大小的屏幕会出现问题。便利贴和软木板是背景。我怎么能这样做,以便在任何尺寸的屏幕上,图钉将在正确的位置?它目前是线性布局。

2 个答案:

答案 0 :(得分:1)

最佳解决方案是使用RelativeLayout。我建议您的便利贴不是背景的一部分,而是自己的ImageView,以便您可以随时重新调整尺寸以适应任何屏幕。因此,您可以将其添加到软木塞的代码中。

<ImageView
android:id="@+id/cork"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignTop="@+id/postit_note"
/>

它将软木塞置于中心位置,并将其与便利贴的顶部对齐。

您可以查看所有其他属性,以帮助您使用RelativeLayouts Here

答案 1 :(得分:0)

根据上述建议,做一下这样的事情:

<RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

        <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView"
                android:layout_alignParentTop="true"
                android:src="@drawable/postit"/>

        <ImageButton
                android:id="@+id/angry_btn"
                android:background="@drawable/pushpin"
                android:layout_width="80dp"
                android:layout_height="80dp"
                android:shadowDx="0"
                android:shadowDy="0"
                android:layout_gravity="center"
                android:shadowRadius="5"
                android:layout_centerHorizontal="true"
                android:layout_alignParentTop="true"/>

    </RelativeLayout>

注意:您应该将棕色部分作为最外层布局的背景,并为便利贴添加单独的图像,您应该将其设置为我上面显示的图像视图。