좀 간단한 방법은...
MainActivity에서 적용되는 코드를 onCreate() 부분에 쓰지 마시고
onResume() 부분에 쓰시는건 어떤가요?
아니면..
Intent intent = new Intent(MainActivity.this, SettingActivity.class);
startActivityForResult(intent, REQUEST_SETTING);
형태로 들어가셔서 설정 바꾸시고 값이 변경될경우에
setResult(RESULT_OK);
finish();
로 종료하세요.
MainActivity의 onActivityResult() 에서 resultCode가 RESULT_OK 인경우에 적용할 코드를 수행하실 수도 있을것 같아요.