Navigations Drawer mit icons

  • Hi,
    ich schreibe gerade eine App die eine Sidebar zum rausklappen hat. Diese soll einige texte mit jeweiligen Icons besitzen.
    Als sidebar habe ich einfach ein Project in Eclipse erstellt mit Navigations Drawer. Mit den Tabs habe ich kein Problem, da ich ja nur einiges umschreiben muss, jetzt habe ich mein ImageView in das Feld eingefügt und wollte es mit einem SimpleAdapter übergeben.

    Ich habe hier mal den Java code aus der NavigationDrawerFragment.java


    Und noch das Layout dazu drawer_listview_item.xml


    Das Problem ist jetzt einfach, dass bei meinem SimpleAdapter immer die Fehlermeldung kommt:
    The constructor SimpleAdapter(NavigationDrawerFragment, List<HashMap<String,Object>>, int, String[], int[]) is undefined
    Aber es passt doch so
    Falls ihr noch infos braucht einfach Fragen und schon mal danke

    2 Mal editiert, zuletzt von Kanubelkarl (6. Februar 2015 um 15:10)

  • Hallo und herzlich Willkommen im Forum ;)

    Also was ich wüsste gerne, was die Frage ist :D

    Ich nehme mal an, dass du den SimpleAdapter nutzt, aber nichts angezeigt wird?
    Dann solltest du mal versuchen, das:

    Java
    List<HashMap<String, Object>> mList = new ArrayList<HashMap<String, Object>>();


    durch

    Java
    List<HashMap<String, String>> mList = new ArrayList<HashMap<String, String>>();


    ersetzen

    und dann

    Java
    hm.put("Bild", Bild[i]);


    durch

    Java
    hm.put("Bild", Integer.toString(Bild[i]));

    Außerdem sehe ich kein Return-Statment.... :)

    P.S.: Bitte nächstes mal in den entsprechenden Code-Tag setzen, damit man es besser lesen kann.
    P.P.S.: Wenn du gerade anfängst mit Android zu arbeiten, arbeite mit Android Studio, da das ADT nicht weiterentwickelt wird.
    P.P.P.S.: Es gibt auch Libraries, welche sowas schon implementiert haben. Siehe z.B.: https://github.com/neokree/MaterialNavigationDrawer

    Viel Spaß noch beim Entwickeln ;)


    EDIT:
    Okay hatte etwas übersehen. Du musst als Context getActivity() angeben, da ein Fragment keinen Context bietet.

    Java
    SimpleAdapter sa = new SimpleAdapter(getActivity(), mList, R.layout.drawer_listview_item, from, to);

    MfG,
    Christopher

    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke

  • Ich hab es nochmal überarbeitet und auch meine Frage hinzugefügt.
    Ich werde mal schauen ob ich weiter mit Eclipse machen, ich habe bisher Java Programmiert und habe daher Eclipse benutzt

    Das getActivity() hat geholfen es zu kompelieren, nur stürzt die App immer noch ab. Ein return habe ich auch mit drin

    Einmal editiert, zuletzt von Kanubelkarl (6. Februar 2015 um 15:38)

  • Was sagt LogCat? Vor Allem für den Bereit 'Error'?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Guten Tag,
    ich habe gerade eben mein Problem gelöst, es war eigentlich so simpel,

    Java
    List<HashMap<String, Object>> mList = new ArrayList<HashMap<String, Object>>();
    for(int i=0;i<10;i++){
    HashMap<String, String> hm;
    hm.put("Text",text); 
    hm.put("Bild", Bild);
    mList.add(hm);
    }

    ich habe bei der "HasMap<String, String> hm" einfach das = new HashMap<String, String>() vergessen
    Aber danke mit dem Log, hab da noch gar nicht rein geschaut.

    5 Mal editiert, zuletzt von Kanubelkarl (7. Februar 2015 um 13:06)

  • Ja, so etwas übersieht man gerne mal. :)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!