我已将布局content_main.xml
虚增为view
变量vi
如何从这个虚增的视图中获取fragment
?
可能是这样的:
SupportMapFragment mapFragment = (SupportMapFragment) inflatedView.getSupportFragmentManager()
.findFragmentById(R.id.map);
public void getMapFragment()
{
LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View vi = inflater.inflate(R.layout.content_main, null);
CoordinatorLayout mainL = (CoordinatorLayout) findViewById(R.id.main_view);
mainL.removeAllViews();
mainL.addView(vi);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
谢谢你的回答!
答案 0 :(得分:0)
如果您的膨胀布局包含<fragment/>
标记,即如果您的片段以其所在的活动的XML方式膨胀,那么您可以&#34;得到&#34;片段来自:
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
您要求FragmentManager
找到您的片段,这与要求View
找到它不同。
如果您的膨胀布局包含以编程方式添加的片段,即您在活动的XML中添加了标记,并使用FragmentTransaction
将片段添加到视图中(使用标签!),那么您可以&#34;得到&#34;片段来自:
SupportMapFragment mapFragment = (SupportMapFragment)
getSupportFragmentManager().findFragmentByTag("MAP");
有关片段的详细信息,请参阅此source。