J'essaie d'utiliser des groupes d'activités - puisque j'utilise des onglets, et que vous voulez avoir les onglets lors du chargement et de l'activité après avoir cliqué sur l'élément de la liste. mais je reçois nullpointerexception dans la ligne suivante:Android ActivityGroup - NullPointerException
View view1 = S1_Group.group.getLocalActivityManager()
.startActivity("S1", intent)
.getDecorView();
Le code est ...
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent intent = new Intent(getApplicationContext(), S1.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Log.d("test","Before view");
try{
View view1 = S1_Group.group.getLocalActivityManager()
.startActivity("S1", intent)
.getDecorView();
Settings_Group.group.setContentView(view1);
}
catch (Exception e){
Log.e("test","view failded:"+e);
}
....
mise à jour: ce que mon activité de groupe est:. Je ne pouvais pas trouver quel était le problème,
public class S1_Group extends ActivityGroup {
public static S1_Group group;
private ArrayList<View> history;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.history = new ArrayList<View>();
group = this;
View view = getLocalActivityManager().startActivity("F1",
new Intent(this, F1.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
setContentView(view);
}
}
Étape de débogage de base: Si vous obtenez un NPE sur une ligne avec plusieurs chaîne "." invoque, par exemple 'a(). b(). c(). d()', alors probablement l'une de ces méthodes renvoie null. Divisez cette ligne en appels individuels, par ex. X X = a(); Y y = x.b(); Z z = y.c(); W w = z.d() ', et ajoute des contrôles pour voir lequel retourne null. –