我正在构建一个Android应用程序,该应用程序使用一系列元素组成其中一个屏幕,每个元素都是ScreenElement类的子元素,再次扩展LinearLayout
。
我的活动查询数据库,确定元素的数量及其性质,并将每个元素添加到活动的布局中。这些元素是常规Java类,但是当它们通过它们的父类扩展LinearLayout
时,我可以添加它们
LinearLayout layout = (LinearLayout) findViewById(R.id.screenLayout);
for(ScreenElement e : screenElements) {
layout.addView(e);
}
元素可以包含各种内容,例如图像或文本。现在,我想要一个可以显示Map的元素。问题是:Google建议在Fragment
中显示地图,这是不可能的(因为持有类是View
,而不是Activity
或Fragment
。我也可以使用MapView
,但我找到的所有示例(例如this或this)都在MapView
中使用Activity
,因为{{1}需要连接MapView
的覆盖函数(onPause
,onDestroy
,...)。
所以我基本上希望找到的是这样做(不是工作代码):
Activity
嗯,除了这不起作用。我会感谢你能给我的每一个暗示!
答案 0 :(得分:1)
你接近你没有工作的代码。如果将传入的上下文强制转换为类型Activity,则应该能够访问fragmentManager函数。
((MainActivity)con).getSupportFragmentManager()....
然后您可以按照之前链接的教程
进行操作