Android ApiDemos示例中FragmentLayout类中的奇怪FragmentTransaction

Android ApiDemos示例中FragmentLayout类中的奇怪FragmentTransaction,android,android-fragments,sample,fragmenttransaction,Android,Android Fragments,Sample,Fragmenttransaction,很抱歉,这个问题是为那些在Eclipse上工作并能够访问ApiDemo示例代码的人准备的 具体地说,我试图在名为FragmentLayout 以下代码对我来说是有问题的(您可以在ApiDemoFragmentLayout.java,ShowDetails()方法中找到完整的代码): 我有两个问题: index==0和index!=0 资源R.id\u a\u项(仅在搜索后出现在所有Apidemo中)属于某种菜单快捷方式资源,根本不清楚在此处使用它的原因 《android.developers指南

很抱歉,这个问题是为那些在Eclipse上工作并能够访问ApiDemo示例代码的人准备的
具体地说,我试图在名为FragmentLayout

以下代码对我来说是有问题的(您可以在ApiDemoFragmentLayout.javaShowDetails()方法中找到完整的代码):

我有两个问题:

  • index==0
    index!=0

  • 资源R.id\u a\u项(仅在搜索后出现在所有Apidemo中)属于某种菜单快捷方式资源,根本不清楚在此处使用它的原因

  • 《android.developers指南》没有解释这段代码

    索引==0和索引!=之间的区别是什么0

    位置
    0
    和列表的其他位置之间不应该有任何区别,因为代码被设置为简单地用新的细节片段替换先前的细节片段

    资源R.id\u a\u项(仅在所有Apidemo中出现,在 搜索)属于某种菜单快捷方式资源,而不是 完全清楚为什么在这里使用它


    这很可能是示例中的错误,因为使用该id将引发异常,因为它在当前布局中不存在(我已经运行了在4.2 emulator上找到的
    API演示
    项目,它会引发该id的“未找到视图”异常…等等)。可能是上一版本的示例中出现了错误,因为您询问的代码在其他版本中不存在。

    是的,我就是这么想的。但你永远不会知道,根据墨菲定律,如果我没有问起Android,结果会是
    if(index==0)
    stuff挂起应用程序或删除内部RAM:-)
                    // Execute a transaction, replacing any existing fragment
                    // with this one inside the frame.
                    FragmentTransaction ft = getFragmentManager().beginTransaction();
                    if (index == 0) {
                        ft.replace(R.id.details, details);
                    } else {
                        ft.replace(R.id.a_item, details);
                    }
                    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
                    ft.commit();