Ich bin mit dem listview hinzufügen/entfernen Fußzeile für listview-Kreuz-app in der android version 4.3?
Ich verwendet, um die ListView
fügen Sie in der Fußzeile anzeigen und auch entfernen Fußzeile seine fein gearbeitet in der android-version 4.4 oben
aber problem bei der android-version 4.3 und unten
Ich bin mit dem folgenden code, um die Fußzeile
listfortestmyfeed.addFooterView(footerView);
entfernen und Fußzeile folgenden code
listfortestmyfeed.removeFooterView(footerView);
entfernen Fußzeile zeigt, class cast exception in meinem logcat
07-11 20:07:49.665: E/ACRA(22818): com.sample.activities fatal error : com.sample.adapters.MyfeedAdapter cannot be cast to android.widget.HeaderViewListAdapter
07-11 20:07:49.665: E/ACRA(22818): java.lang.ClassCastException: com.sample.adapters.MyfeedAdapter cannot be cast to android.widget.HeaderViewListAdapter
07-11 20:07:49.665: E/ACRA(22818): at android.widget.ListView.removeFooterView(ListView.java:390)
07-11 20:07:49.665: E/ACRA(22818): at com.sample.fragments.MyfeedNewFragment$FollowingBloopsdoinback.onPostExecute(MyfeedNewFragment.java:172)
07-11 20:07:49.665: E/ACRA(22818): at com.sample.fragments.MyfeedNewFragment$FollowingBloopsdoinback.onPostExecute(MyfeedNewFragment.java:1)
07-11 20:07:49.665: E/ACRA(22818): at android.os.AsyncTask.finish(AsyncTask.java:631)
07-11 20:07:49.665: E/ACRA(22818): at android.os.AsyncTask.access$600(AsyncTask.java:177)
07-11 20:07:49.665: E/ACRA(22818): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
07-11 20:07:49.665: E/ACRA(22818): at android.os.Handler.dispatchMessage(Handler.java:99)
07-11 20:07:49.665: E/ACRA(22818): at android.os.Looper.loop(Looper.java:137)
07-11 20:07:49.665: E/ACRA(22818): at android.app.ActivityThread.main(ActivityThread.java:5103)
07-11 20:07:49.665: E/ACRA(22818): at java.lang.reflect.Method.invokeNative(Native Method)
07-11 20:07:49.665: E/ACRA(22818): at java.lang.reflect.Method.invoke(Method.java:525)
07-11 20:07:49.665: E/ACRA(22818): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
07-11 20:07:49.665: E/ACRA(22818): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
07-11 20:07:49.665: E/ACRA(22818): at dalvik.system.NativeStart.main(Native Method)
ich nicht findout den Fehler, bitte sagen Sie mir, wer weiß
Voraus vielen Dank
- fügen Sie Ihren code zu
- Ich bin es gewohnt, fügen Sie die Fußzeile im async-Klasse onpreexecute-Liste.addFooterView(view)und onpostexecute () - Methode der Liste.removefooterView(Ansicht), aber den arbeitete in der android-version 4.4, oben, aber showin g der Fehler in der android-version 4.3 unten zeigt oben genannten Fehler
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist wahrscheinlich verursacht durch den Aufruf
setAdapter()
auf das ListView - vor aufrufensetFooterView()
. Dies war notwendig, in allen Android-Versionen vor 4.4Tatsächlich, ich wusste nicht, diese Einschränkung hatte sich gelockert wurde für KitKat, bis ich sah, diese Frage... 🙂
In den Quellen der
addFooterView()
für API-level 15:Mittlerweile KitKat, diese Einschränkung war entspannt:
Wenn Sie wollen, um die Kompatibilität mit pre-4.4, müssen Sie respektieren den Aufruf, um, D. H.
addFooterView(footer);
setAdapter(adapter);
removeFooterView(footer);
Ja. Kopf - /Fußzeilen sind in der Tat problematisch mit der Abwärtskompatibilität. Ich habe vor kurzem umgestalteten code, um die relative layout statt einer Fußzeile, die haben ziemlich viel, was ich erwartet auf jedem Gerät -> Fußzeile sichtbar, Fußzeile Weg. Versuchen Sie, diese mit einem ListView-footer, das wird nicht funktionieren, stattdessen müssen Sie rufen Sie addFooterView, removeFooterView und selbst dies funktioniert nicht wie bereits erwähnt. Der Absturz könnte umgangen werden, indem
aber der footer immer noch nicht funktioniert, dass way.