2016-11-12 2 views
0

donné une nouvelle méthode d'instance d'un fragment:PutLong sur un long nul dans l'argument Bundle

public static MyFragment newInstance(Long someLong) { 
    Bundle args = new Bundle(); 
    MyFragment fragment = new WorkoutDetailsRoutineInfoFragment(); 
    args.putLong(ARGS_LONG, someLong); 
    fragment.setArguments(args); 
    return fragment; 
} 

Si someLong est nul, cela ne fonctionne pas.

Causée par: java.lang.NullPointerException: Tentative d'invoquer la méthode virtuelle long java.lang.Long.longValue() 'sur une référence d'objet nul

Comment puis-je obtenir à stocker le Long même si c'est nul?

+0

Pourquoi en avez-vous besoin? Si vous ne le stockez pas, cela signifie qu'il est nul – Pein

+0

Parce que parfois c'est nul, parfois ce n'est pas – user7085962

Répondre

1

Vérifiez si sa valeur est nulle et si sa valeur nulle ajoute -1 si elle n'est pas nulle, ajoutez l'objet Long. Assez facile