TextEdit nur für Zahleneingabe

ensacom

ensacom

Ambitioniertes Mitglied
Threadstarter
Hallo, kann mir einer sagen ob es eine Möglichkeit gibt eine Tastatur anzuzeigen wo nur Zahlen zu sehen sind? Also nicht Zahlen, Punkt, Komma und Sonderzeichen sondern nur Zahlen.

Danke
 
K

ktt

Neues Mitglied
Hi,

probier mal

android:numeric ="decimal"

aus ein punkt ist möglich. alles andere nicht
 
K

ktt

Neues Mitglied
sorry bin den text nur überflogen und weil ich es gerade offen hatte habe ich geantwortet sorry :(
 
friedger

friedger

Fortgeschrittenes Mitglied
@ktt Kein Grund sich zu entschuldigen :) Mir ist erst bei Deiner Antwort aufgefallen, dass ensacom wohl was anderes meinte.
 
ensacom

ensacom

Ambitioniertes Mitglied
Threadstarter
Ja nur wie bekomme ich das nun hin dass ich eine Tastatur angezeigt bekomme wo mir nur die Zahlen angezeigt werden?

Aus den Angaben auf der Seite die oben verlinkt ist werde ich als Anfänger nicht schlau.
Blickt da einer durch und kann mir ein kleines Beispiel geben?
 
friedger

friedger

Fortgeschrittenes Mitglied
Im Layout das Attribute android:inputType="numberDecimal" für das TextEdit setzen.
 
ensacom

ensacom

Ambitioniertes Mitglied
Threadstarter
InputType gibts nicht, es gibt eine Input method und die nimmt das nicht.
Numeric habe ich auf Integer stehen. Das bewirkt abernur dass nur Zahlen eingegeben werden können. Ist auch gut so aber ich will eben nur eine Tastatur angezeigt bekommen die außer den zahlen nichts anzeigt
 
ensacom

ensacom

Ambitioniertes Mitglied
Threadstarter
Habe ich gelesen nur finde ich das nicht im Layoutmanager unter Eclipse und wenn ich das so in die xml eintrage sagt er mir das der Bezeichner ungültig ist.

Bekomme folgenden Fehler in der xml

ERROR No resource identifier found for attribute 'inputType' in package 'android'
 
Zuletzt bearbeitet:
ensacom

ensacom

Ambitioniertes Mitglied
Threadstarter
Man bin ich doof, habe irgendwann mal testweise die SDK-Version in den Properties umgestellt auf 1.1, jetzt gehts.


Also jetzt gehts das er den Fehler nicht mehr zeigt aber die Tastatur, die nur Zahlen anzeigt sehe ich immer noch nicht.
Danke
 
friedger

friedger

Fortgeschrittenes Mitglied
Auf meinem G1 mit 1.5 kommt die Zahlentastatur wenn ich in das Editfeld klicke. Ich verwende das folgende Layout:

<EditText android:text="EditText01" android:id="@+id/EditText01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:inputType="numberDecimal"></EditText>
 
B

bierbuster

Ambitioniertes Mitglied
hi
ich bin gerade voll am verzweifeln ...
fange gerade an mit der android programmierung und habe für eienn freund einen "InchConverter" geschrieben. Der funktioniert auch wunderbar, nur habe ich diesen DezimalPunkt und nicht das gewünschte Komma als Dezimal-Trennzeichen.

Gibt es irgendwo eine Einstellung die man machen muss, damit anstatt des Punktes ein Komma eingegeben werden kann?

Code:
<EditText
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:inputType="numberDecimal"
      android:id="@+id/edit_unit"/>
so sieht es im mom in meiner xml aus ...

danke schonmal für die hilfe

Olli
 
L

Lilithian

Ambitioniertes Mitglied
Weiß nicht ob das geht, das im EditText zu ändern, aber ersetz doch einfach im Java-Code den Punkt durch ein Komma.
 
B

bierbuster

Ambitioniertes Mitglied
hmmm aber das ändert an der eingabe ja nichts ... das wäre dann ja nur für die ausgabe schön ...

mein prob ist halt, dass ich beim eingeben der zahlen, zwar aufs komma tippen kann aber nichts erscheint ... nur auf dem punkt kommt dann auch nen punkt ... ich will das andersrum
 
L

Lilithian

Ambitioniertes Mitglied
Vielleicht kann man das mit der onKeyDown-Methode umgehen, müsstest du mal ausprobieren, einfach über den inputType geht das so weit ich weiß nicht, aber vielleicht weiß es ja jemand anderes besser. ^^

So ungefähr vll (nicht getestet):

Code:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_COMMA) {
        // komma zum edittext hinzufügen
        return true;
    }
    return super.onKeyDown(keyCode, event);
}
 
Zuletzt bearbeitet:
B

bierbuster

Ambitioniertes Mitglied
public static final int TYPE_NUMBER_FLAG_DECIMAL

Since: API Level 3
Flag of TYPE_CLASS_NUMBER: the number is decimal, allowing a decimal point to provide fractional values.

Constant Value: 8192 (0x00002000)
also hier steht das bei deiner version, theoretisch nur ein "Punkt" für die Dezimalstelle verfügbar ist!

So in etwa mach ich das ja auch... ich benutze halt "numberDecimal" ... da ist das ja drin.
 
Oben Unten