Hilfe: Dynamisches Soft Keyboard

  • Hallo an alle,


    zunächst vorweg: Ich bin ein kompletter Android Neuling, jedoch habe ich bereits gute Erfahrungen in der Programmierung mit Java. Ich studiere Informatik und stehe kurz vor meinem Abschluss. Als Thema für die Bachelorarbeit wurde mir von meinem Professor die Entwicklung eines Soft Keyboards vorgeschlagen, dass der Benutzer zur Laufzeit dynamisch anpassen kann. Das heißt, der Benutzer soll Größe und Reihenfolge der Tasten, sowie die auszuführende Aktion bei Tastendruck auf seine Bedürfnisse anpassen können.


    Daher meine Frage:


    Hat sich schon mal jemand mit dieser Thematik befasst? Oder kennt sich jemand zumindest so gut mit Android aus um mir zu sagen ob es vom Betriebssystem überhaupt unterstützt wird im laufenden Betrieb Anpassungen an irgendeinem Soft Keyboard vorzunehmen?


    Im Beispielcode von Google (Soft Keyboard) ist – da es sich um ein unvollständiges Beispiel handelt – ebenfalls keinerlei Dynamik implementiert. Könnte dieses Beispiel irgendwie erweitert werden um auf die vordefinierten Tasten zur Laufzeit zuzugreifen und diese zu ändern?


    Leider bleibt mir nicht mehr allzu viel Zeit (Anmeldung der Arbeit spätestens 27.10.10) weswegen ich über Antworten bis zum 22.10.10 sehr dankbar wäre. Auch ähnliche Themen, Links oder Literaturhinweise könnten mir weiterhelfen.

  • Also es ist möglich andere als das vorinstallierte Soft Keyboard auf einem Android Device zu benutzen. Siehe dazu diesen Link.
    Ich denke es wäre somit auch möglich ein eigenes dynamisches (in welcher form auch immer) Keyboard zu implementieren. Da das aber eh erstmal nach konzeptueller Arbeit klingt, würd ich mich fragen, ob das nicht besser erstmal in nem einfachen Prototyp auf nem PC getestet werden sollte, dann kannst dus immer noch auf Android porten. Die Entwicklung eines völlig neuen UI-Konzepts, inklusive Prototyping, User Studies und was Alles dazu gehört, ist eigentlich auch ohne finale Implementierung für einen Device genug für ne Bachelorarbeit.
    Ist aber jedenfalls ein sehr interessantes Thema.

  • Vielen Dank für Deine Antwort. Das es möglich ist andere Soft Keyboards als das vorinstallierte zu verwenden wusste ich bereits aufgrund des Beispiels von Google. Als einsteiger habe ich zur GUI-Programmierung immer nur die Layout .xml-Dateien im Ordner res. Wenn ich mir dort ein Keyboard angelegt hatte, konnte ich die vorhandenen Buttons auch ändern. Für mich bestand dann die Frage ob auch neue Buttons (die nicht im Layout-File definiert sind) hinzugefügt werden können und nach Neustart des Gerätes auch wieder geladen werden können. Die schönste Lösung wäre wohl Layouts z.B. von einer SD-Karte laden zu können. Geht das? Als Alternative sehe ich die Erstellung einer Konfigurationsdatei die bei laden des Keyboards ausgelesen wird und anhand dieser Datei die Buttons erstellt werden.
    Das Keyboard soll in der Abschlussarbeit auch programmiert werden und sollte zumindest auf dem Emulator laufen. Wie genau die Schreibfunktion aussehen soll (also ob ein Buchstabe/Textbaustein pro Key oder 2x "abc" für "b") und wie die Positionierung der Tasten mindestens aussehen soll bin ich noch am Verhandeln.

  • Also es ist auch möglich layouts komplett im Code zu definieren (klick mich oder mich ). Da die custom Keyboards auch Logik (sprich Java Code) beinhalten denke ich, dass es kein Problem ist, da ne Datenbank/XML/whatever dahinter zu hängen, aus der bei jedem Start das Layout generiert wird, anstatt es fix zu definieren. Die bestehenden keyboards haben ja auch Möglichkeiten, Einstellungen zu speichern.

Jetzt mitmachen!

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