java - Android 扩展 MainActivity
问题描述
我有一个 MainActivity 类,它有一些菜单代码,其他类通过在每个类上扩展 MainActivity 继承,我的问题是,如果我在 MainActivity 的 onCreate 和我的其他类之一(例如:Act_02)我扩展了MainActivity,但不希望toast(来自MainActivity)在Act_02(扩展MainActivity)上执行,如何在不删除扩展MainActivity的情况下实现这一点?
解决方案
如果您可以更改 的代码MainActivity
,则可以添加受保护的布尔属性showToastMessage
并将其设置为 true(这将是默认值)。
proteted boolean showToastMessage = true;
然后,在 onCreate() 中,将 toast 行包装在 if 中:
if(showToastMessage){
<put the toast line here>
}
在您不希望显示 toast 的类中,您showToastMessage
在构造函数中设置为 false。
public MyNewClass extends MainActivity{
showToastMessage = false;
}
其他扩展 MainActivity 的类将默认标志为true
.
super.onCreate()
并且所有类都可以按预期调用任何超级初始化。