我正在使用App
,它有两个ImageView
其中一个用于背景,用Picasso加载带有模糊效果的图像,第二个用正常形状显示海报,我想知道如何将textView
等内容放在下面的图层上,这是我的模糊图像?
这是我的布局和代码的图片:
我想把那些IMDB
,看着和想要TextViews
的点数放在第二个ImageView
,现在是Blur,我该怎么做?
<RelativeLayout
android:id="@+id/pallet"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/transparent"
android:transitionName="profile">
<ImageView
android:id="@+id/blur"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:transitionName="profile">
</ImageView>
<android.support.v7.widget.CardView
android:id="@+id/cardView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:elevation="0dp"
app:cardCornerRadius="10dp"
android:transitionName="profile">
<ImageView
android:id="@+id/posterImage"
android:layout_width="match_parent"
android:layout_height="400dp"
android:scaleType="fitXY"
android:transitionName="profile"
android:layout_gravity="center"/>
<ImageButton
android:id="@+id/playTrailer"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:baselineAlignBottom="true"
android:layout_gravity="bottom|end"
android:layout_marginRight="35dp"
android:layout_marginBottom="35dp"
android:background="@drawable/play_circle"
android:elevation="10dp"
android:scaleType="fitCenter"/>
</android.support.v7.widget.CardView>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/cardView"
android:background="@color/transparent">
<TextView
android:id="@+id/movieTitle"
style="@style/movieTitleFont"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:textAlignment="center"
android:textColor="@color/colorPrimaryDark"
android:textSize="22dp"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:id="@+id/watchNum"
style="@style/movieTitleFont"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:text="341"
android:textAlignment="viewStart"
android:textSize="26dp" />
<TextView
android:id="@+id/wantNum"
style="@style/movieTitleFont"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="880"
android:textAlignment="center"
android:textSize="26dp" />
<TextView
android:id="@+id/imdbNum"
style="@style/movieTitleFont"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="25dp"
android:textAlignment="viewEnd"
android:textSize="26dp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
<TextView
android:id="@+id/watchNumtxt"
style="@style/subText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:text="Watched"
android:textAlignment="viewStart"
android:textColor="@color/cardview_dark_background"
android:textSize="18dp" />
<TextView
android:id="@+id/wantNumtxt"
style="@style/subText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Want"
android:textAlignment="center"
android:textSize="18dp" />
<TextView
android:id="@+id/imdbNumtxt"
style="@style/subText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="IMDB"
android:textAlignment="viewEnd"
android:textColor="@color/cardview_dark_background"
android:textSize="18dp" />
</RelativeLayout>
并且还有,我可以给Radius下面的模糊图像显示白色的角落?它现在是白色的,因为海报底部是白色的,我可以用picasso
吗?
答案 0 :(得分:0)
好的尝试这样的事情,我只是为了灵活性而简化,你应该得到逻辑,然后正确地放置你的物品。
你现在的问题是你有一个Layout
叠加模糊和CardView
但是你有另一个信息。
您应该将它们全部放在相同的相对布局中,以便允许叠加或创建子元素。
<RelativeLayout> <!-- Contains background (blur + infos) and CardView -->
<RelativeLayout> <!-- Contains blur image and text informations (Not even necessarily needed depends on you) -->
<ImageView
android:id="@+id/blur" />
<YourInformationsView/>
</RelativeLayout>
<android.support.v7.widget.CardView />
</RelativeLayout>
答案 1 :(得分:0)
为什么不在imageLayout中添加imageView和textView,并根据imageView的图像提供frameLayout背景。
<RelativeLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView android:id="@+id/blur" .../>
<TextView ... />
</FrameLayout>
<android.support.v7.widget.CardView .../>
</RelativeLayout>
答案 2 :(得分:0)
不要考虑如何向ImageView
添加内容,考虑如何在您需要的位置添加ImageView
之上的内容。
<ImageView
android:id="@+id/blur"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:transitionName="profile">
</ImageView>
成为
的内容<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_alignParentTop="true"
...your ImageView/>
<View
this is your blurred view
android:layout_width="match_parent"
android:layout_height="match_parent"
do something to blur this />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
>
your textviews...
</RelativeLayout>
当然,如果您将RelativeLayout
放入其中,则wrap_content
高度不能再为match_parent
,但您的图片看起来不像那样。它甚至看起来像ImageView
上方但在文本下方的模糊层。它看起来并不像ImageView
那样模糊,而是像它上面的模糊层一样。