首页 > 解决方案 > 如何从另一个活动设置活动的内容视图

问题描述

我正在构建一个音乐播放器。每当用户单击 aImageView时,就会出现一个对话框。对话框中将有一个开关。我想说的是,每当用户打开开关时,我都想将 of 更改ContentViewMainActivity.java 自定义布局文件。我怎样才能做到这一点。

任何建议都会被接受..谢谢

标签: javaandroidxmlandroid-layout

解决方案


我会向您的 Dialog 添加一个回调,您只需调用它来设置您的内容,例如

class MyDialog(val switchChangedCallback: (Boolean) -> Unit) : DialogFragment() ...

当您更改开关时,调用回调并在 Activity 中处理结果:

val dialog = MyDialog(switchChangedCallback = { isOn ->
                if (isOn) {
                    setContentView(R.layout.abc)
                } else {
                    setContentView(R.layout.def)
                }
            })

dialog.show(supportFragmentManager, MyDialog::class.java.name)

您可能需要检查回调是否在应用轮换中幸存下来!


推荐阅读