Ich habe eine Kartenansicht, die einige zeigt OverlayItems. Bei der onTapMethode einer Überlagerung möchte ich eine neue Aktivität auslösen, die dieses Überlagerungsfoto beispielsweise als Vollbild anzeigt.
Wenn ich das in meiner Overlay-Klasse mache:
Intent intent = new Intent();
intent.setClass(getApplicationContext, FullscreenView.class);
startActivity(intent);
.. es kann keinen Anwendungskontext finden, da ich nicht im Rahmen einer Aktivität bin.
Wenn ich meiner Hauptaktivität eine Methode hinzufüge, sagen wir startFullscreen:
public static void startFullscreen() {
if (sCurrentPhoto != null) {
Intent intent = new Intent();
intent.setClass(getApplicationContext(), FullscreenView.class);
startActivity(intent);
}
}
Ich kann nicht anrufen getApplicationContext()und startActivity(), weil ich mich in einem statischen Kontext befinde. Ich brauche die statische Methode jedoch, um sie in der Overlay-Klasse wie aufzurufen MainView.startFullscreen().
Einfach ausgedrückt: Wie kann ich eine Aktivität von einer Nicht-Aktivitätsklasse aus starten?