1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. manoyo, 02.01.2011 #1
    manoyo

    manoyo Threadstarter Neuer Benutzer

    Hallo an alle,

    ich habe eine Frage bzgl. des Generierens/Laden von Oberflächen.
    Bei Android ist es ja so, dass die in XML formulierten Oberflächen vorkompiliert im Projekt zur Verfügung stehen. Es soll aber die Möglichkeit geschaffen werden, die Oberflächen mittels Customizing anzupassen, ohne dafür die App neu kompilieren zu müssen. Außerdem sollen ganze Oberflächen dynamisch als Ergebnis irgendwelcher Aktionen geladen werden. Ob das Listen sind oder Formulare ist hierbei völlig frei. Im Grunde ähnlich einem Templatesystem in HTML oder auch bei Microsoft WPF. Hier kann ich HTML/XML editieren, was zur Laufzeit dann geparst wird.

    Zur eigentlichen Frage, wie kann ich das tun?
    Es wäre super wenn Ihr Ansätze hättet, da ich im Moment echt planlos bin.

    Danke und Gruß
     
  2. ts-apps, 02.01.2011 #2
    ts-apps

    ts-apps Erfahrener Benutzer

    Du kannst doch jederzeit Layout Elemente im Java Code erstellen und deinem Layout hinzufügen.

    Code:
    TextView tv = new TextView(context);
    tv.setText("Hallo Welt");
    vorhandenesLayoutElement.addView(tv);
     
  3. manoyo, 03.01.2011 #3
    manoyo

    manoyo Threadstarter Neuer Benutzer

    Ja das schon. Aber stell dir vor jmd. möchte den Aufbau einer Eingabemaske samt Farben anpassen, die Reihenfolge der Felder soll anders sein usw. Dann will man hierfür doch keinen Code anpassen müssen. Dass sollte über ein Template gesteuert werden können. Und genau da ist mein Problem.
     
  4. wilco, 03.01.2011 #4
    wilco

    wilco Android-Hilfe.de Mitglied

    Das kannst Du durchaus mit festem Code machen. Das läuft letztlich darauf hinaus dass Du die XML Datei selbst parsen musst, und mit den geparsten Daten dann entsprechend die benötigten Views dynamisch per Code erzeugst.

    Das Betriebssystem macht das ja letztlich genauso. Wenn Du Dich da entsprechen reinfuchsen möchtest kannst Du wahrscheinlich die entsprechenden Code-Teile die die XMLs auslesen und daraus die Views erzeugen aus dem Android Source übernehmen.
     
  5. manoyo, 03.01.2011 #5
    manoyo

    manoyo Threadstarter Neuer Benutzer

    omg, ich habe befürchtet dass dieser Vorschlag kommt.

    Was mich das wieder an Zeit kostet :crying:

    Naja, wenn noch jmd. einen einfacheren Vorschlag hat, wäre ich sehr dankbar.
     
  6. ts-apps, 03.01.2011 #6
    ts-apps

    ts-apps Erfahrener Benutzer

    Sofern es wirklich nur um das Anzeigen / Ausblenden bzw. ändern der Reihenfolge geht kannst dir das natürlich spaaren.

    Soll der User aber die Oberfläche komplett frei Anpassen können wirst wohl nicht drumrumkommen. Kannst ja mal nen blick auf meine App "Form Builder" werfen. Dort ist sowas schon umgesetzt.
     
  7. manoyo, 03.01.2011 #7
    manoyo

    manoyo Threadstarter Neuer Benutzer

    Vielen Dank für deine Antwort, aber ich habe mich für einen etwas anderen Weg entschieden, bei dem das Layout im groben vorgegeben ist und nur Sachen wie Menüeinträge und angezeigte Daten dynamisch wechseln.

    Deine App finde ich recht gut da es immer "irgendwelche" Dinge gibt, die man sich einfach mal notieren/aufheben will. Viel Erfolg weiterhin damit.
    Recht hilfreich stell ich mir dort eine Spracheingabe vor. Der Witz ist, dass mir die meisten Dinge im Auto einfallen und ich dann nur begrenzt auf meiner Bildschirmtastatur rumtippen kann.

    Danke soweit an alle.
     

Diese Seite empfehlen