我有个问题。我有 3 个活动(MainActivity、DetailsActivity、SettingsActivity),在 SettingsActivity 中有一个切换按钮“夜间模式”。我想要的是,当按钮更改时,将所有三个活动的背景更改为灰色。
public class SettingsActivity extends AppCompatActivity {
//This is SettingsActivity(not Main one)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
TextView SettingsTitle = (TextView) findViewById(R.id.SettingsTitle);
TextView NightText = (TextView) findViewById(R.id.NightmodeText);
ToggleButton toggleNightMode = (ToggleButton) findViewById(R.id.toggleNightmode);
final RelativeLayout NightBG = (RelativeLayout) findViewById(R.id.NightBG);
final LinearLayout DetailsBG = (LinearLayout) findViewById(R.id.mainBG);
final LinearLayout HomeBG = (LinearLayout) findViewById(R.id.HomeBG);
toggleNightMode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NightBG.setBackgroundColor(Color.parseColor("#545657"));
HomeBG.setBackgroundColor(Color.parseColor("#545657"));
DetailsBG.setBackgroundColor(Color.parseColor("#545657"));
}
});
NightBG 与该 java 文件 (SettingsActivity) 处于相同的活动中。但是 HomeBG 在 MainActivity 中,DetailsBG 在 DetailsActivity 中。每次我启动应用程序并按下该按钮时,应用程序都会崩溃。如果我从这个文件中删除 HomeBG 和 DetailsBG,它可以很好地将当前布局的颜色更改为灰色。请帮我。