2012-04-12 2 views
4

Ich habe einige Probleme mit meinem Android-Projekt in Eclipse.XML-Dateien können im grafischen Layout nicht geöffnet werden: FakeAdapter kann nicht in BaseAdapter umgewandelt werden

Ich habe zwei XML-Layout-Dateien, und beide enthalten ListViews.

Die Listviews arbeiten perfekt auf meinem Android-Handy, aber wird nicht das Design-Fenster öffnen verdunkeln, den folgenden Fehler geben:

com.android.layoutlib.bridge.impl.binding.FakeAdapter cannot be cast to android.widget.BaseAdapter 

Beide Dateien enthält den folgenden Code:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" > 

<ListView 
    android:id="@+id/cardList" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:fadeScrollbars="true" 
    android:fastScrollAlwaysVisible="true" 
    android:fastScrollEnabled="true" 
    android:scrollbarSize="30dp" 
    android:scrollbarStyle="insideOverlay" > 
</ListView> 

</LinearLayout> 

Irgendwelche Vorschläge ?

+0

Das scheint ein Fehler im ADT-Plugin für Eclipse zu sein. Stellen Sie sicher, dass Sie die aktuelle Version von ADT und die SDK-Entwicklertools verwenden. – CommonsWare

+0

Entfernen Sie 'android: fastScrollEnabled =" true "' und 'android: fastScrollEnabled =" true "' –

Antwort

15

Es könnte der

android:fastScrollAlwaysVisible="true" 

, die Ihre Anwendung nervt. Versuchen Sie es zu löschen.

+0

+1 es funktioniert, aber es ist total verrückt ...: s – Farhan

+1

Auch funktionieren, wenn Entfernen 'android: fastScrollEnabled =" true "' –

+0

Was ist der Grund dafür? können Sie erklären.? –

1

Ändern Sie einfach das Gerät in der Layout-Vorschau.

Kleine Bildschirme (Zoll < 7) können nicht korrekt in der Vorschau angezeigt werden. Wählen Sie zum Beispiel 10.1 ''.

0

Ich habe keine Android: fastScroll * -Option in einem meiner Layouts, aber ich bekomme diesen Fehler bei jeder Version von Android, kann aber nicht auf irgendwelchen Testgeräten reproduzieren.

Stellt sich heraus, das auftritt, wenn lege ich einen Adapter wie folgt erklärt:

MyAdapter implements ListAdapter 

auf die tatsächlich das Problem behebt folgende Änderung:

MyAdapter extends BaseAdapter 

EDIT: Benutzer Es stellte sich heraus, wo ein Xposed Modul Fastscroll auf App ListView's zu forst! Leider ist dieses Modul ziemlich dumm und überprüft nicht den Adaptertyp.

Verwandte Themen