Rozpoczynam Activity
(potomka PreferenceActivity
) od mojej działalności pracowniczej w następujący sposób:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1458)
loadInfo();
}
void showSettingsDialog()
{
startActivityForResult(new Intent().setClass(this, MyConfigure.class), 1458);
}
MyConfigure
klasa NIE ma żadnych setResult()
wywołań. W rzeczywistości MyConfigure
klasa nie ma żadnego kodu, z wyjątkiem miejsca, w OnCreate()
którym ładuje preferencje za pomocą addPreferencesFromResource
.
Teraz onActivityResult
jest wywoływana z requestCode
z 1458
przedwcześnie, zaraz po MyConfigure
uruchomieniu czynności. Testowano na emulatorach 1.6 i 2.1 oraz urządzeniu 2.1. Czy jest wezwanie do setResult()
pochowania gdzieś w środku PreferenceActivity
? Albo jak inaczej można wytłumaczyć to przedwczesne wezwanie?