我在活动中使用CollapsingToolbarLayout
和Fragments。
我正在使用以下代码,以便向活动添加新片段:
FragmentDetails fragmentDetails = FragmentDetails.newInstance();
new DetailPresenter(fragmentDetails, appRepository, requestedPostId);
fm.beginTransaction()
.replace(R.id.fragment_container, fragmentDetails, String.valueOf(requestedPostId))
.addToBackStack(String.valueOf(requestedPostId))
.commit();
一切正常,但是我想像这样在我的add
中使用replace
而不是FragmentManager
:
FragmentDetails fragmentDetails = FragmentDetails.newInstance();
new DetailPresenter(fragmentDetails, appRepository, requestedPostId);
fm.beginTransaction()
.add(R.id.fragment_container, fragmentDetails, String.valueOf(requestedPostId))
.addToBackStack(String.valueOf(requestedPostId))
.commit();
但是当我使用add
而不是replace
时,我的CollapsingToolbarLayout
跳到5dp
的屏幕外,我的片段视图将是这样的:
为什么会这样?我搜索了很多,但什么都没找到。
更新: 我在其他设备上进行了检查。 这发生在API 23及更高版本中! 例如,在装有Android 4.4.2的设备中,一切正常。
谢谢。
答案 0 :(得分:0)
很久以后我解决了这个问题!
这是由于CoordinatorLayout
而引起的。我不明白为什么,但是问题出在我的工具栏布局上,该布局从Appbar
的顶部开始留有空白。
我将所有代码都放在Linearlayout
中,它解决了我的问题!