「表示する領域のViewGroup
」に以下を設定する
android:clipChildren="false"
気を付けないといけないのは、領域外に押し込まれるViewの親ではなく、押し込まれた領域のViewGroupに設定する必要があるということ。つまり以下。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:clipChildren="false" <!-- 押し込まれる領域にclipChildren:falseを設定 -->
android:layout_height="match_parent">
<FrameLayout
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_gravity="center">
<View
android:layout_width="150dp"
android:layout_height="50dp"
android:layout_marginTop="-25dp" <!-- 親のFrameLayoutの領域外 -->
android:background="@android:color/black"
android:gravity="center" />
</FrameLayout>
</FrameLayout>
言われてみればそうか、と思うけどちょっと気持ち悪いと思うのは私だけだろうか。