Es ist eine Weile her, als ich versuche, mein Problem zu lösen.Android Studio "Aktualisieren" Fragment (e) Layout von MainActivity
Ich möchte meine Fragmente Layout-Widgets, z. B. Textansichten, Bildansichten, Kartenansichten und alle anderen "aktualisieren".
Ich versuche, diese wie zu tun:
((ImageView) findViewById(R.id.BCFrame)).setImageResource(R.drawable.frame_1_6);
(Becouse diese für Beispiel CardViews in anderen Layout sind.)Aber es zeigt immer, nullObjectPointer Fehler
Ich habe herausgefunden, dass ich sie aktualisieren kann, wenn ich irgendwo in dieses Fragment klicke, mit "onClick" -Funktion
public void RefreshUpgrade(View view){
((TextView) findViewById(R.id.PlayerUpgradeTView)).setText("Player level: " +Main.PlayerLevel[0]);
((TextView) findViewById(R.id.BoxUpgradeTView)).setText("Box level: " + Main.BoxesLevel[0]);
((TextView) findViewById(R.id.GarageUpgradeTView)).setText("Garage level: " + Main.GarageLevel[0]);
((TextView) findViewById(R.id.GarageSlotsTView)).setText("Garage slots: " + Main.GarageSlots[0]);
((TextView) findViewById(R.id.short_description222)).setText("Money: " + Main.Money[0] + "/600");
((TextView) findViewById(R.id.short_description22)).setText("Boxes Opened: " + Main.BoxesOpened[0] + "/30");
if(Main.Money[0] >= 600){
((TextView) findViewById(R.id.short_description222)).setTextColor(0xff00ff00);
}
}
Aber ich brauche 2 Dinge, die nicht herausfinden können.
1.Ich müssen diese Objekte automatisch „aktualisieren“, wenn Argumente wahr sind (wenn Aussagen in MainActivity)
2.I müssen diese Objekte automatisch „aktualisieren“, nach einiger Zeit ging haben (wie GameLoop).
In Simple Java habe ich alles funktioniert, aber ich habe nur JPanels, nichts wie Fragmente.
@trakasi Dies ist eine andere Frage, aber nicht Ihre 'ClickerFragment' erweitern' Fragment'? Ansonsten schauen Sie sich eine neue Frage an. –
Danke, sieht so aus, als ob das funktioniert, aber habe ein Problem .. java.lang.NullPointerException: Versuch, die virtuelle Methode 'void com.crelix.celix.ClickerFragment aufzurufen.refreshViews() 'für einen Null-Objektverweis – trakasi
Ja, es ist extends, und in der ClickerFragment-Methode werden refreshViews als "used" angezeigt (gelbe Farbe in Android Studio) – trakasi