当我在XLarge屏幕设备上的API级别11上运行时,这一切都很完美.
当我退回到10级编译,并在正常大小的屏幕上运行时,我会在创建一个新的Activity并使其中的片段膨胀的时候失败.
Caused by:
java.lang.ClassNotFoundException:
android.view.fragment in loader
dalvik.system.PathClassLoader[/data/app/com.motoappsummitagenda-1.apk]
04-01 01:07:14.311 2870 2870 E
AndroidRuntime: at
dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
所以它看起来像什么,某处正在寻找android.view.fragment,而不是兼容版本,android.support.v4.app.Fragment.当然,android.view.fragment不会在API级别10上找到.但是android.view.fragment从哪里来?
正在膨胀的XML是
<?xml version="1.0" encoding="utf-8"?> <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:name="com.motorapp.SessionFragment" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/sessionfragment"> </fragment>
其代码开始:
package com.motorapp; import java.util.List; import java.util.ListIterator; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.LinearLayout; import android.widget.ScrollView; import android.widget.TextView; import android.support.v4.app.*; import android.support.v4.util.*; import android.support.v4.*; import android.support.v4.widget.*; public class SessionFragment extends android.support.v4.app.Fragment {
症状类似于这个问题,但我没有这些错误
inflating fragments with compatibility package android
android.compatibility.v4.android-support-v4 jar文件位于Eclipse的我的构建路径上
在项目>属性> Java构建路径
我在清单中(我尝试过不同的名称).
在开始使用碎片时,我首先在蜂窝设备上使用了API 11,这一切都很完美.它正在获得相同的代码(修改为使用稍微不同的兼容性API)使用兼容性库,我有这个问题.任何想法都将非常受欢迎.谢谢,
彼得