我在一个占据整个屏幕的活动中有一个 ImageView。我想要做的是在这个 ImageView 的角落有几个半透明的按钮覆盖在顶部(比如 30% 的透明度)。android中的ImageView可以做到这一点吗?如果有人可以指出我正确的开始方向吗?
问问题
6448 次
1 回答
5
使用布局,并使您的 ImageView 和两个 Button 在布局中成为子级。
使用相对布局的示例:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:src="@drawable/image"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="0.5"
android:text="Button 1"/>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/button1"
android:alpha="0.5"
android:text="Button 2"/>
</RelativeLayout>
您可以使用 android:layout_marginTop 和 android:layout_marginLeft 属性更好地定位按钮。
这里要理解的关键部分是:
1/ ImageView 设置为match_parent
,因此它会拉伸以填充RelativeLayout。
2/默认情况下,子视图位于RelativeLayouts的左上角,这就是button1出现在那里的原因。
3/ Button2 使用 RelativeLayout 属性定位在 button1 的右侧layout_toRightOf
。它的垂直位置仍然设置为默认值 - 顶部。
于 2013-10-05T06:19:57.193 回答