Я починаю Activity
(нащадка PreferenceActivity
) з моєї робочої діяльності наступним чином:
@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
клас НЕ має setResult()
дзвінків. Насправді MyConfigure
клас не має коду, окрім випадків, OnCreate()
коли він завантажує налаштування за допомогою addPreferencesFromResource
.
Тепер onActivityResult
викликається requestCode
з 1458
передчасно, відразу після того, MyConfigure
діяльність виконується. Тестувався на емуляторах 1.6 та 2.1, а також на пристрої 2.1. Чи є заклик setResult()
поховати десь у PreferenceActivity
? Або як ще можна пояснити цей передчасний дзвінок?