按下后退按钮时"找不到类android.transition.Transition"异常

Lyd*_*Lyd 8 java android exception android-fragments

我有一个活动一次托管一个片段,并在两个片段之间交换.片段A使用按钮启动片段B,片段B使用按钮或后退按钮启动片段A.

使用自定义按钮从Fragment A到B以及从B到A时,一切正常.问题是当我使用后退按钮从片段B转到A(片段A将事务添加到后栈)时.

当在Fragment B上按下后退按钮时,我得到了几个"找不到类android.transition.Transition"异常和"无法解决check-cast 1217警告,如每个警告11,不会导致程序崩溃:

日志

我不知道这意味着什么,或者如何解决这个问题.

这就是片段A如何开始片段B:

mButtonNextFragment.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        FragmentManager fm = getActivity().getSupportFragmentManager();
        Fragment fragment = FragmentTwo.newInstance(mCount);
        fragment.setTargetFragment(FragmentOne.this, 0);

        fm.beginTransaction()
            .addToBackStack("transaction1")
            .replace(R.id.layout_fragmentContainer, fragment)
            .commit();
    }
});
Run Code Online (Sandbox Code Playgroud)

这就是片段B开始片段A的方式:

mButtonPrevFragment.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        FragmentManager fm = getActivity().getSupportFragmentManager();
        fm.beginTransaction()
            .replace(R.id.layout_fragmentContainer, getTargetFragment())
            .commit();
    }
});
Run Code Online (Sandbox Code Playgroud)

这就是主机活动如何开始片段A:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fragment_container);

    FragmentManager fm = getSupportFragmentManager();
    Fragment fragment = fm.findFragmentById(R.id.layout_fragmentContainer);

    if (fragment == null) {
        fragment = new FragmentOne();
        fm.beginTransaction()
            .add(R.id.layout_fragmentContainer, fragment)
            .commit();
    }
}
Run Code Online (Sandbox Code Playgroud)

谁知道这个问题的原因?

这是完整的错误日志:http://pastebin.com/CPtCUBYg

小智 1

有点晚了,但我可能有东西。不确定这个问题的原因是什么,我稍后会进行一些研究,但是在我更新 android-support lib 后,在我的项目中发生了同样的错误。使用旧版本(位于 HoloEverywhere 库内)可以正常工作。尝试使用旧版本的 android-support 看看是否效果更好。也许某些东西在最近的版本中被弃用了,但我不确定。