我嘗試使用帶有AndroidAnnotations和maven的片段。 它的工作與Android 4.0+,但後來我試圖使它與Android 2.3.3工作,我不得不使用支持-V4行家庫:支持Android片段,java.lang.NoSuchMethodException:片段(Context,AttributeSet)
<dependency>
<groupId>com.google.android</groupId>
<artifactId>support-v4</artifactId>
<version>r7</version>
</dependency>
我的片段被定義爲:
<android.support.v4.app.Fragment android:id="@+id/myFragment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
class="com.bla.HeaderFragment_"/>
和我的動態擴展FragmentActivity
我得到這個例外,當我運行該應用程序:
.....
Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class android.support.v4.app.Fragment
at android.view.LayoutInflater.createView(LayoutInflater.java:508)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:207)
at android.app.Activity.setContentView(Activity.java:1657)
at com.tagonsoft.codecamp.MainActivity_.setContentView(MainActivity_.java:46)
at com.tagonsoft.codecamp.MainActivity_.onCreate(MainActivity_.java:31)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
... 11 more
Caused by: java.lang.NoSuchMethodException: Fragment(Context,AttributeSet)
at java.lang.Class.getMatchingConstructor(Class.java:643)
at java.lang.Class.getConstructor(Class.java:472)
at android.view.LayoutInflater.createView(LayoutInflater.java:480)
... 22 more
任何想法爲什麼?
你的片段是否有一個空的構造函數? – dymmeh
不,我嘗試使用它與AndroidAnnotations像這裏https://github.com/excilys/androidannotations/wiki/Enhance-Fragments – gdogaru
使用'fragment'標籤而不是'android.support.v4.app.Fragment'。 – Luksprog