将 FrameLayout 内容剪辑到背景可绘制对象
Clip FrameLayout contents to background drawable
我有一个 FrameLayout
,其中包含一个带有 TextView
的 LinearLayout
和 2 个具有不同背景颜色的 View
。 FrameLayout
有一个背景可绘制对象,它是一个圆形的浅黄色矩形。
我希望最后一个 View
(较深的黄色)被背景可绘制对象剪裁,即 FrameLayout
.
底部应该有圆角
如何实现?只能通过 XML 完成吗?
图片说明问题:
您可以制作不同的 XML 并应用于框架布局。 XML 代码如下。
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corner
android:bottomLeftRadius="Any integer value"
android:bottomRightRadius="Any integer value" />
</shape>
我最终使用 CardView
和 app:cardCornerRadius="40dp"
。
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="300dp"
android:background="#FFA737"
app:cardCornerRadius="40dp">
我有一个 FrameLayout
,其中包含一个带有 TextView
的 LinearLayout
和 2 个具有不同背景颜色的 View
。 FrameLayout
有一个背景可绘制对象,它是一个圆形的浅黄色矩形。
我希望最后一个 View
(较深的黄色)被背景可绘制对象剪裁,即 FrameLayout
.
如何实现?只能通过 XML 完成吗?
图片说明问题:
您可以制作不同的 XML 并应用于框架布局。 XML 代码如下。
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corner
android:bottomLeftRadius="Any integer value"
android:bottomRightRadius="Any integer value" />
</shape>
我最终使用 CardView
和 app:cardCornerRadius="40dp"
。
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="300dp"
android:background="#FFA737"
app:cardCornerRadius="40dp">