Я хочу сделать действие на половину экрана (не диалоговое окно / всплывающее окно). Когда я нажимаю кнопку, я хочу, чтобы действие отображалось на половине экрана до закрытия основного действия. Диалоги и всплывающие окна не помогают мне делать то, что я хочу. Есть какой-либо способ сделать это?
Я хочу активности, а не фрагментов.




Создайте действие с прозрачным фоном и панелью инструментов.
примените этот стиль к своей деятельности через манифест.
<style name = "Theme.AppCompat.Transparent.NoActionBar" parent = "Theme.AppCompat.Light.NoActionBar">
<item name = "android:windowIsTranslucent">true</item>
<item name = "android:windowBackground">@android:color/transparent</item>
<item name = "android:windowContentOverlay">@null</item>
<item name = "android:windowNoTitle">true</item>
<item name = "android:windowIsFloating">true</item>
<item name = "android:backgroundDimEnabled">false</item>
</style>
AndroidManifest.xml
<activity android:name = ".TransparentActivity"
android:theme = "@style/Theme.AppCompat.Transparent.NoActionBar">
<intent-filter>
<action android:name = "android.intent.action.MAIN"/>
<category android:name = "android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
Определите свою активность XML с 50% фоном
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout
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:weightSum = "1"
android:orientation = "horizontal"
tools:context = ".TransparentActivity">
<View
android:layout_width = "0dp"
android:layout_weight = ".5"
android:background = "@color/white"
android:layout_height = "match_parent"/>
<View
android:layout_width = "0dp"
android:layout_weight = ".5"
android:layout_height = "match_parent"/>
</LinearLayout>
Для такого рода вариантов использования используются фрагменты. попробуйте использовать фрагменты поверх активности, чтобы добиться того же.