Hilfe: Userinteraktion mit einem service?

  • Hallo zusammen,


    derzeit arbeite ich an dieser Abschlussarbeit. Wie in dort schon erwähnt, bin ich noch ein richtiger Android noob, weswegen ich einfach mal hier in die Bastelecke poste. Falls es woanders besser reinpasst, weil es nichts alltägliches ist, bitte einfach das Topic in die entsprechendes Unterforum verschieben.


    Konkret geht es darum: Ich habe das Google SoftKeyboard Beispiel angefangen zu erweitern. Bei Tastaturstart können derzeit Buttons aus einem Textfile ausgelesen und diese auf dem Keyboard platziert werden (drag n drop). Die Buttons werden dynamisch erzeugt und sind deshalb nicht in den Ressourcen definiert. Jetzt sollen die vorhandenen Buttons vom Benutzer angepasst werden können (Größe, Text, Schriftgröße usw.). Schön wäre dazu ein Dialog o.ä. bei dem der Nutzer die Einstellungen für einen bestimmten Button ändern kann und danach der geänderte Button im Keyboard übernommen wird. In Java SE wär das für mich in ner halben Std erledigt ;) , Android hingegen bringt mich zum verzweifeln.


    Meine Probleme mit denen ich seit Tagen kämpfe sind:


    - das Keyboard läuft als InputMethodService und nicht als Activity --> startActivityForResult() kann, soweit ich bisher in Erfahrung bringen konnte, nur in einer laufenden Activity aufgerufen werden. Gibt es dafür eine andere Methode oder ein Workaround?


    - Um mit dem User in Aktion zu treten (in form eines Dialogs, Konfigurationsbildschirms o.ä.) muss ja zwangsläufig eine Activity gestartet werden, oder gibt es da auch ein Hintertürchen?


    - Wichtigste Frage: Wie kriege ich den Button den ich ändern möchte in die neue Activity und danach wieder zurück in den Keyboard Service?


    Vielen Dank schon mal für Eure Hilfe und falls ihr weitere Ideen habt wie ein dynamisches Keyboard umgesetzt werden könnte würde ich die natürlich auch gerne hören.

Jetzt mitmachen!

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