我已经创建了几个片段,并通过以下方式添加了第一个片段:
mainFragment = (MainFragment) MainFragment.create();
getSupportFragmentManager().beginTransaction()
.setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right)
.add(R.id.content, mainFragment, MAIN_FRAGMENT_TAG)
.commit();
第二个片段是这样添加的:
getSupportFragmentManager().beginTransaction().setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right)
//.hide(mainFragment)
.add(R.id.content,VenueFragment.create(vid), "Venue Fragment")
.addToBackStack(null)
.commit();
setDrawerIndicatorEnabled(false);
现在,如您所见,hide方法未应用于该事务,并且
VenueFragment
已打开,这种情况下的问题是,在打开VenueFragment
(这是全屏 View )的同时,按下该片段的空白部分会调用该函数的调用。 MainFragment
可点击的 View 。 如何防止这种情况? 如果我使用hide选项,则不会发生,但是由于某种原因,用于删除
MainFragment
的动画正在上升,这带来了一种怪异的体验。 最佳答案
您需要使ViewGroup
的根VenueFragment
可点击,以便它处理单击事件,并且它们不会向下传递(按z顺序)到另一个Fragment
。