2010-07-29 2 views
0

У меня есть действие по умолчанию, которое начинается сначала (Activity A), и оттуда пользователь может перейти к другому действию (Activity B). В B после некоторой работы пользователь устанавливает sharedpreference. в следующий раз при запуске приложения я хочу, чтобы проверить в А если sharedpreference равна нулю, чтобы перейти к В. и я поставил это, если только подКак пропустить мероприятие? android

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

и инкапсулирует всю OnCreate. когда приложение запускает его, пропускает A, а на B i отображается макет и FC с NullPointerException.

У кого-нибудь есть опыт?

ИЛИ

любой один получил лучшее представление о пропуске?

ответ

0

Ну, Саймон, вы должны использовать общие привилегии. сохраните данные в общих предпочтениях. Затем в действии, когда вы хотите использовать данные в общих префабриках, снова получите экземпляр с одинаковым общим предпочтением. получить данные и использовать их.

пройти через этот код

public class Calc extends Activity { 
    public static final String PREFS_NAME = "MyPrefsFile"; 

    @Override 
    protected void onCreate(Bundle state){   
     super.onCreate(state); 
     . . . 

     // Restore preferences 
     SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
     boolean silent = settings.getBoolean("silentMode", false); 
     setSilent(silent); 
    } 

    @Override 
    protected void onStop(){ 
     super.onStop(); 

     // We need an Editor object to make preference changes. 
     // All objects are from android.context.Context 
     SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
     SharedPreferences.Editor editor = settings.edit(); 
     editor.putBoolean("silentMode", mSilentMode); 

     // Commit the edits! 
     editor.commit(); 
    } 
} 

вероятно, вы получите представление о

+1

Кроме того отделка() B перед началом деятельности А. –

+0

да отделка() B перед началом Activity A сделал трюк. Я использовал SharedPreferences любым способом. прочитайте мой ответ для NullPointer. Спасибо и приветствую – Simon

+0

Спасибо, что узнали, что вы его исправили. –

0

Чтобы ответить на мой собственный вопрос. У меня был приемник местоположения в onDestroy, потому что он не был инициализирован из-за пропусков onCreate, он вернул NullPointer.

Смежные вопросы