2011-01-06 10 views
0

Ich erstelle ein Android-Spiel. Derzeit verwende ich eine "normale" Ansicht und zeichne die onDraw() und habe einen Handler um zeitgesteuerte Ereignisse und ähnliches zu verarbeiten. Wie auch immer (tm) ich werde es in ein SurfaceView mit einem Thread und einer konstanten Schleife konvertieren.Edit Box für mein Spiel?

Wie auch immer, wenn der Spieler eine bestimmte Taste drückt, möchte ich eine Art Edit-Box haben, damit der Spieler einen Wert (einen Preis) eingeben kann. Aber ich bin irgendwie verloren, wie ich das erreichen kann. Zuerst dachte ich, ok, lass uns einfach einen EditText machen, ihn auf dem Bildschirm positionieren und fertig. Aber anscheinend kann ich nicht einfach einen EditText an einer X, Y-Stelle platzieren und danach entfernen.

Ich schaute auf das LunarLander-Beispiel, das TextView für die Anzeige von Text verwendet. Es ist bereits im Layout-XML definiert und wird sichtbar und unsichtbar, indem Nachrichten zwischen dem Spiel-Thread und dem UI-Thread gesendet werden. Dies scheint sehr kompliziert und die Editierbox würde die ganze Zeit existieren.

Außerdem dachte ich darüber nach, meine eigene "Bearbeitungsbox" zu erstellen, indem ich einfach eine Box auf den Bildschirm zeichne, die Tastatur aktiviert und dann Eingaben von der Tastatur erfasst. Aber ich würde nicht einmal wissen, wo ich anfangen soll mit "benutzerdefinierten" Tastatureingaben (auf dem Bildschirm vs. physisch, wie man Texteingabe per Tastatur erfasst, wie man die Tastatur wieder versteckt, wenn sie fertig ist, usw.).

Also habe ich mich gefragt, was ist der beste Weg, dies zu tun?

Edit: vielleicht nützlich zu wissen, aber mein Spiel ist im Querformat behoben.

Antwort

0

Wie wäre es, ein Dialogfeld mit einigen schicken Grafiken mit dem EditText zu öffnen?

Wenn Sie nur mit dem SurfaceView arbeiten möchten, müssen Sie möglicherweise ein eigenes einfaches GUI-System implementieren. Ich würde mich umsehen, vielleicht gibt es da draußen einige GUI-Bibliotheken für Android-Spiele.

+0

Ich habe versucht, die Standard-Android-Dialogfelder tatsächlich zu verwenden, weil sie das Eintauchen des Spiels brechen. Ich habe vorher ein Android-Dialogfeld für eine Listenauswahl verwendet, aber es wieder entfernt und es durch mein eigenes "Dialogfeld" ersetzt (indem ich einfach einige Rechtecke auf den Bildschirm gezeichnet habe), so dass es in meinem Spiel besser aussah. – pbean

Verwandte Themen