Android 将Google地图添加为LinearLayout的子级
我正在构建一个Android应用程序,它使用一系列元素组成一个屏幕,每个元素都是ScreenElement类的子元素,ScreenElement类再次扩展了Android 将Google地图添加为LinearLayout的子级,android,google-maps,layout,Android,Google Maps,Layout,我正在构建一个Android应用程序,它使用一系列元素组成一个屏幕,每个元素都是ScreenElement类的子元素,ScreenElement类再次扩展了LinearLayout “我的活动”查询数据库,确定元素的数量及其性质,并将每个元素添加到活动的布局中。这些元素是常规Java类,但由于它们通过其父级扩展了LinearLayout,因此我只需添加它们即可 LinearLayout layout = (LinearLayout) findViewById(R.id.screenLayout)
LinearLayout
“我的活动”查询数据库,确定元素的数量及其性质,并将每个元素添加到活动的布局中。这些元素是常规Java类,但由于它们通过其父级扩展了LinearLayout
,因此我只需添加它们即可
LinearLayout layout = (LinearLayout) findViewById(R.id.screenLayout);
for(ScreenElement e : screenElements) {
layout.addView(e);
}
元素可以包含所有类型的内容,例如图像或文本。现在,我想要一个可以显示地图的元素。问题是:谷歌建议在片段
中显示地图,这是不可能的(因为holding类是视图
,而不是活动
或片段
。我也可以使用地图视图
,但我找到的所有示例(例如或)在活动中使用MapView
,因为连接到活动的重写功能(onPause
,ondestory
,…)需要MapView
所以我基本上希望找到这样的东西(不是工作代码):
好吧,除了这不起作用。我非常感谢您能给我的每一个提示!您的代码不起作用了。如果您将传入的上下文转换为类型Activity,您应该能够访问fragmentManager函数
((MainActivity)con).getSupportFragmentManager()....
然后您可以按照前面链接的教程进行操作这个google maps api演示有一个部分“以编程方式添加地图”,这可能对您有用。是的,我试过了,但问题是getSupportFragmentManager()
只能在活动
扩展FragmentActivitiy
时调用。情况并非如此,因为我在非活动类中工作。您的示例说,MapFragment
不能以编程方式创建,因此我不能在此处使用MapFragment
。非常感谢。这非常简单。我不知道<可以从上下文中调用代码>supportManager
。
((MainActivity)con).getSupportFragmentManager()....