我正在制作一个带有暗灰色背景的闪屏。我使用RelativeLayout
作为所有小部件的基础。为了创建和暗淡效果,我创建了一个dim.xml
,它基本上是一个黑色形状(稍后设置不透明度)。
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="#000000" />
布局:
<RelativeLayout 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:background="@drawable/background"
android:id="@+id/ActivityLayout">
<ImageView
android:layout_width="240dp"
android:layout_height="@dimen/abc_action_bar_default_height_material"
android:layout_marginTop="98dp"
android:layout_marginRight="170dp"
android:src="@drawable/logo"
android:id="@+id/logo" />
</RelativeLayout>
有没有办法在RelativeLayout
和小部件之间放置黑色形状,然后将一些alpha值设置为黑色形状以实现调光效果?
答案 0 :(得分:2)
有没有办法在RelativeLayout和之间放置黑色形状 小部件,然后按顺序将一些alpha值设置为黑色形状 达到调光效果?
您可以通过在RelativeLayout中添加另一个View
并将其宽度和高度设置为“match_parent”来实现此目的,然后将View的背景颜色更改为您想要的颜色。
您的布局可能如下所示:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
...
>
<View android:width="match_parent"
android:height="match_parent"
android:background="@color/the_color_you_want"/>
<here are the widgets...>
</RelativeLayout>
<强>更新强>
但它并没有填满整个视口,大约有10dp的余量 在每一边,不会在屏幕上延伸。任何方式来填补 整个屏幕?
这是因为您为RelativeLayout
的左侧和右侧设置了10dp填充。有两种方法可以使颜色视图填满整个屏幕:
android:clipToPadding="false"
设置为RelativeLayout
,然后将以下属性设置为颜色视图:机器人:layout_marginLeft = “ - 10dp”
机器人:layout_marginRight = “ - 10dp”
这很容易做到,但它可能会导致您的小部件出现问题,所以您可以尝试一下。
paddingLeft
移除paddingRight
和RelativeLayout
属性,因此您的颜色View
将填满屏幕,然后重新排列小部件以确保其左侧或右侧边距为正确的。您可能需要使用此方法做更多工作,但我确信这是正确的方法。