새로 설치 한 후 다른 활동을 열고 싶다는 안드로이드 응용 프로그램이 있습니다.onActivityResult() 코드가 실행되지 않았습니다.
나는 이것을 startActivityForResult() 및 SharedPreferences를 사용하여 시도했다. 여기 내 코드입니다 :
주요 활동 :
공용 클래스 ONTTMainActivity이 확장 활동 {
정적 최종 INT의 REQUEST_CODE = 5;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SharedPreferences settings = getSharedPreferences("prefs", 0);
boolean firstRun = settings.getBoolean("firstRun", true);
if(firstRun){
startActivityForResult(
new Intent(this, ONTTSplashActivity.class), REQUEST_CODE);
}
setContentView(R.layout.activitymain);
}
초 활성 :
공용 클래스 ONTTSplashActivity가 활동을 확장 {
@Override
공개 무효에서 onCreate (번들 savedInstanceState)는 {
super.onCreate(savedInstanceState);
setContentView(R.layout.activityonttsplash);
final Button btnSkip = (Button) findViewById(R.id.button_skip);
btnSkip.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
setResult(RESULT_OK);
finish();
}
});
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Toast.makeText(ONTTSplashActivity.this, "Toast Reached", Toast.LENGTH_LONG).show();
if (resultCode == RESULT_OK) {
SharedPreferences settings = getSharedPreferences("ONTT_prefs", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("firstRun", false);
editor.commit();
}
}
문제가 있음에도 두 번째 활동이 종료 됨 onActivityResult 함수의 코드가 실행되지 않습니다. 나는 그것에 도달했는지 알기 위해 축배를 사용하여 시도했다.
몇 가지 비슷한 질문을 보았지만 모든 해결책을 시도했지만 작동하지 않습니다.
오 와우 .. 그 수치 .. 고마워요, 그 해결책은 – GMBrian
예 tis는 당신의 질문에 대한 해결책입니다. –