В некоторой степени похожий вопрос, но ответ на него заключается в том, чтобы просто удалить возвышение и тень ... не то, что я хочу: Android CardView со странной рамкой при прозрачном
То, что я хочу, это то, что показано в строке поиска Pixel Launcher ... а именно фигура, которая имеет полупрозрачный фон и тень, но тень не перекрывается с белой формой (что в итоге заставило бы его выглядеть серым). Я в основном хочу тень, но с отверстием в середине, где моя форма ...
Вот чего я хочу достичь (панель поиска внизу):
Вот то, что я пробовал, но из прикрепленного изображения видно, что серая тень проходит через полупрозрачный белый фон.
activity_main.xml
<FrameLayout
android:layout_width="120dp"
android:layout_height="120dp"
android:background="@drawable/rectangle"
android:elevation="8dp" />
Rectangle.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="4dp" />
<solid android:color="#aaffffff" />
</shape>
Вот как выглядит моя попытка:
Вы можете видеть, что, хотя моя фигура полупрозрачна на белом фоне, она становится серой из-за тени под ней, чего я не хочу.
Я также попытался поиграть с View # setOutlineProvider, но безуспешно.
Я также пытался играть с https://github.com/harjot-oberai/MaterialShadows
Я не хочу делать это с изображением из 9 патчей, если смогу избежать этого.