如何获取片段的ID?

use*_*613 6 android android-fragments

首先,我按照本教程创建了一个带有操作栏+标签的活动.这个实现的作用是它在main_activity布局中有一个fragment_container(只是一个线性布局),并根据选择的选项卡将其替换为片段.

现在,我正在尝试添加一些片段到活动的通信,但我得到了一个nullpointerexemption.

这是我的代码:

com.mypackage.MAPFragment map_ =
(com.mypackage.MAPFragment) getFragmentManager().findFragmentById(R.id.map);
map_.ActivityToMapMethod();
Run Code Online (Sandbox Code Playgroud)

所述MAPFragment片段膨胀具有带MapView的和的ID的XML布局地图.我不太确定地图 ID是否是我应该使用的.我之前在另一个应用程序中成功完成了这个,但是那个时候片段是通过xml添加的,而不是使用replace().

Ste*_*ett 6

findFragmentById()如果在其中实际存在Fragment,则该方法从容器中获取Fragment id.否则你将得到null. findFragmentById(R.id.fragment_container)返回LinearLayout教程内的Fragment .


Shr*_*nda 5

你应该试试:

this.getId();
Run Code Online (Sandbox Code Playgroud)

它对我有用,我希望它对你有用。希望能帮助到你!祝你好运!