Take a look at the State Change Detection example in the IDE (File->examples->02.digital->State Change Detection) to see how to detect when a button gets pressed, not if a button is pressed.
Then, set a state variable (e.g. state or inSettingsState) and then use that variable inside loop() to determine which state you are in and act accordingly... Something like this (not real code)
...
bool inSettingsState = false;
void loop() {
if ( checkButtons() ) {
inSettingsState = !inSettingsState;
}
if ( inSettingsState == true ) {
// do Settings things
}
else {
// do regular things
}
}
...