Domanda

Quando i miei si avvia app, controlla per vedere se ha memorizzato le credenziali di accesso. se non lo fa, comincia un'altra attività per richiedere all'utente per tali credenziali. Il mio problema è che quando si avvia l'attività di sollecito, la prima attività continua l'esecuzione e finisce con i puntatori nulli perché l'attività prompt non ha ancora restituito i dati necessari

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    tv = new TextView(this);
    setContentView(tv);

    promptForLoginInfo(); //method creates intent and starts activity

    displayCredentials(); //prints data to screen
}

l'uscita si legge:. "Null", perché viene eseguito il programma "displayCredentials ()" prima di login rendimenti di attività tempestive

Qualcuno ha idea di cosa fare?

È stato utile?

Soluzione

Il tuo "promptForLoginInfo ()" metodo dovrebbe essere chiamando startSubActivity . Il tuo "displayCredentials ()" il metodo non dovrebbero essere chiamati in onCreate () metodo, ma nel onActivityResult metodo.

Altri suggerimenti

In pronta per il login Info (); è necessario avviare activityForResult. quindi è necessario spostare le credenziali di visualizzazione (); da onCreate a onActivityResult

Hai provato a verificare la presenza di credenziali memorizzate prima di chiamare displayCredentials ()? Se le credenziali non vengono trovati è possibile avviare l'attività da startSubActivity () metodo e call displayCredentials () dopo il prompt finiture di attività in onActivityResult ().

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top