最佳答案
我有一个地图视图活动,显示了一些 OverlayItems
。在一个覆盖的 onTap
方法,我想触发一个新的活动,显示这个覆盖的照片作为一个全屏幕,例如。
当我在叠加类中这样做时:
Intent intent = new Intent();
intent.setClass(getApplicationContext, FullscreenView.class);
startActivity(intent);
它找不到应用程序上下文,因为我不在活动范围内。
当我向我的主活动添加一个方法时,让我们说 startFullscreen
:
public static void startFullscreen() {
if (sCurrentPhoto != null) {
Intent intent = new Intent();
intent.setClass(getApplicationContext(), FullscreenView.class);
startActivity(intent);
}
}
我不能调用 getApplicationContext()
和 startActivity()
,因为我处于静态上下文中。然而,我需要静态方法在 Overlay 类(如 MainView.startFullscreen()
)中调用它。
简单地说: 如何从非活动类启动活动?