Gehen Gesten auch ohne Layout xml ?

  • Hallo Lucas de Vil und ChampS,
    danke für eure Antworten.

    Zitat

    Das liegt daran, dass PreferencesActivity als Subklasse von ListActivity zwingend ein ListView mit passender ID benötigt.

    Ich verstehe nicht ganz, warum PreferencesActivity das ListView nicht benötigt, wenn man alles für die Gesten einbauen kann, jedoch nur vor das Setzen der OverlayView die Zeile auskommentiert.

    Code
    //   	setContentView(gestureOverlayView);


    Es kommt übrigens bei den beiden Preferenzbeispielen PreferencesFromCode und PreferencesFromXml aus den ApiDemos zu den gleichen Fehlern, wenn man dort die Gesten einbaut.
    Das scheint also dann doch mehr an OnGesturePerformedListener zu liegen, nicht an PreferencesActivity .
    Oder deneke ich da falsch?
    Fragende Grüße, schymura ^^

  • Hallo Lucas de Vil und ChampS,
    nochmal danke für die Antworten.


    Lucas de Vil :
    Zwar verstehe ich nicht, was da läuft und vor allem, warum es läuft, wenn ich 3 von deinen Zeilen

    Zitat

    ListView preferencesList = new ListView(this);
    preferencesList.setId(android.R.id.list);
    gestureOverlayView.addView(preferencesList);

    einfüge vor dem

    Code
    setContentView(gestureOverlayView);


    dann funktioniert es fehlerfrei.......
    An was das dann nun liegt ist mir immer noch nicht klar, das passt aber hier sehr gut in die Bastelecke.......
    Danke allen, schymura ^^

  • somit ist eine einzelne view einfach ein leeres layout :P


    Ich glaube, die Diskussion hierzu ist ähnlich sinnvoll wie die zur Positionierung der geschweiften Klammern. :P


    Ich verstehe nicht ganz, warum PreferencesActivity das ListView nicht benötigt, wenn man alles für die Gesten einbauen kann, jedoch nur vor das Setzen der OverlayView die Zeile auskommentiert.


    Nein nein, das Setzen weist deiner Activity ihr View zu (also das programmatisch erzeugte Layout ^^).
    Und IRGENDWO in dieser View MUSS es ein ListView mit der genannten ID geben.
    Genau das macht der Code.


    Wenn es keine View gibt bzw. diese nicht explizit gesetzt wurde, dann wird die Überprüfung sicherlich zur Vermeidung von NullPointerExceptions gar nicht erst durchgeführt.


    Die Demos laufen übrigens, du darfst nur nicht vergessen, die 'inflated' View als Subview zu deinem GestureOverlayViews hinzuzufügen.
    Denn sobald du dein GestureOverlayView als ContentView einhängst, fehlt wieder die ListView mit genannter ID. ;)

    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!«

  • Hallo Lucas de Vil,
    nochmals danke, vor allem Dingen nun auch für die Erklärung.

    Zitat

    Wenn es keine View gibt bzw. diese nicht explizit gesetzt wurde, dann wird die Überprüfung sicherlich zur Vermeidung von NullPointerExceptions gar nicht erst durchgeführt.

    So kann es sein......
    Dann kann ich ja meine erste App in den nächsten Tagen wirklich bis zur Version 1.0 bringen.....


    Danke an Alle und schöne Grüße, schymura :)

Jetzt mitmachen!

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