Android 浓缩咖啡:无法启动内部碎片

Android 浓缩咖啡:无法启动内部碎片,android,android-fragments,android-espresso,Android,Android Fragments,Android Espresso,我正在使用launchFragmentInContainer()启动片段,并能够使用EspressoMatchers执行操作,一切正常 但是,当我想在单击按钮时启动另一个片段(此代码在FragmentOne中),但在启动FragmentTwo时却得到一个错误时,问题就出现了 例如: onClick { val fragment = FragmentTwo.newInstance() val transaction = requireActivity().suppo

我正在使用
launchFragmentInContainer()
启动片段,并能够使用
EspressoMatchers
执行操作,一切正常

但是,当我想在单击按钮时启动另一个片段(此代码在
FragmentOne
中),但在启动FragmentTwo时却得到一个错误时,问题就出现了

例如:

onClick {
        val fragment = FragmentTwo.newInstance()
        val transaction = requireActivity().supportFragmentManager.beginTransaction()
        transaction.add(fragmentContainerID, fragment)
        transaction.commit()    
       }
上述代码给出错误
java.lang.IllegalArgumentException:未找到片段片段2{bc39d06}(6f4636b5-f441-4e38-956a-47ac91d261bc)id=0x4d2}的id 0x4d2(未知)视图


如何解析这个内部片段?或者我必须在浓缩咖啡测试中做些什么。

这个问题是由于
fragmentContainerID
而产生的,它应该是唯一的,并在
launchFragmentInContainer()的引擎罩下使用

因此,在espresso框架内,
android.R.id.content
被用作
片段id
。在执行片段事务时,应使用相同的id

代码片段:

var fragmentContainerID = android.R.id.content // It will do the trick and fragment will be added on top of stack