我怎么能处理没有找到id片段的视图

时间:2013-08-12 11:27:45

标签: java android-fragments android-listfragment runtimeexception

在我的应用程序中,我想要执行以下操作,首先我要检查是否有一个框架,可以将详细信息片段直接嵌入到包含的UI中(它返回false,我不知道为什么这样我假设它是真的任何方式..)在运行时我有一个运行时间 异常,在res文件中我有2个文件夹用于布局,第一个用普通名称布局和fragment_layout xml文件如下:

        <?xml version="1.0" encoding="utf-8"?>
        <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/a_item"
            android:layout_width="match_parent" android:layout_height="match_parent">
            <fragment class="com.example.tst_frag.TitlesFragment"
                    android:id="@+id/titles"

                    android:layout_width="match_parent" android:layout_height="match_parent" />



        </FrameLayout>

我创建的第二个文件夹是layout-land文件夹,其中包含fragment_layout xml flie,代码如下:                          

            <fragment class="com.example.tst_frag.TitlesFragment"
                    android:id="@+id/titles" android:layout_weight="1"
                    android:layout_width="0px" android:layout_height="match_parent" />

            <FrameLayout android:id="@+id/details" android:layout_weight="1"
                    android:layout_width="0px" android:layout_height="match_parent"
                    android:background="?android:attr/detailsElementBackground" />

        </LinearLayout>

这是logcat消息:

        08-12 11:21:16.568: E/AndroidRuntime(278): FATAL EXCEPTION: main
        08-12 11:21:16.568: E/AndroidRuntime(278): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.tst_frag/com.example.tst_frag.MainActivity}: java.lang.IllegalArgumentException: No view found for id 0x7f080002 (com.example.tst_frag:id/details) for fragment DetailsFragment{45f4d648 #1 id=0x7f080002}
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.os.Handler.dispatchMessage(Handler.java:99)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.os.Looper.loop(Looper.java:123)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at android.app.ActivityThread.main(ActivityThread.java:4627)
        08-12 11:21:16.568: E/AndroidRuntime(278):  at java.lang.reflect.Method.invokeNative(Native Method)

0 个答案:

没有答案