Android 如何使用findFragmentById()方法确定设备是手持设备还是平板电脑?

Android 如何使用findFragmentById()方法确定设备是手持设备还是平板电脑?,android,android-fragments,Android,Android Fragments,我有一种情况,我正在检查一个设备是手机还是平板电脑。我有1个活动和2个片段。我想通过活动将数据从第一个片段发送到第二个片段。该代码在平板电脑中工作。但是当我在手机中运行它时,它给出了“java.lang.IllegalArgumentException:No-view-found-for-id 0x7f05003f(com.example.fruitsappragmentdemo:id/fragment\u container2)for-fragment-DetailFragment” 问题是什

我有一种情况,我正在检查一个设备是手机还是平板电脑。我有1个活动和2个片段。我想通过活动将数据从第一个片段发送到第二个片段。该代码在平板电脑中工作。但是当我在手机中运行它时,它给出了“java.lang.IllegalArgumentException:No-view-found-for-id 0x7f05003f(com.example.fruitsappragmentdemo:id/fragment\u container2)for-fragment-DetailFragment”


问题是什么。它在手机里不工作。如何解决这个问题?

在哪个布局和文件夹中包含
R.id.fragment\u container2
?在布局中,大型文件夹我知道它无法识别该id。但是如何克服这个问题?
    @Override
        public void clickItem(int position) {

            DetailFragment fragment = (DetailFragment) getSupportFragmentManager()
                    .findFragmentById(R.id.fragment_container2);

            Bundle bundle = new Bundle();
            bundle.putInt("pos", position);
            if (fragment == null || fragment.getShownIndex()!=position) {
                DetailFragment detail=new DetailFragment();
                detail.setArguments(bundle);
                replaceNewFragment(detail);

            } else {

                fragment.setArguments(bundle);
                replaceFragment(fragment);

            }
}