2015-02-19 14 views
7

Ich weiß nicht warum, aber ich kann den EditText nicht schreiben/schreiben, wenn ich es versuche. Der EditText-Cursor wird nicht angezeigt und die Tastatur, wenn sie angezeigt wird, ist nicht die numerische Tastatur. ich den folgenden Teil des Codes haben:Android: Ein EditText kann nicht eingegeben werden

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    tools:context="com.android.asminhasdespesas.Meta_1Activity"> 


    <TextView android:text="Test:" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <TableLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <TableRow> 


      <EditText 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:inputType="number" 
       android:textColor="#000000" 
       android:cursorVisible="true" 
       android:ems="10" 
       android:id="@+id/editTextMeta" 
       android:layout_gravity="center_vertical" 
       android:layout_weight="1" 
       android:focusable="true" 
       android:focusableInTouchMode="true" /> 

      <TextView 
       android:text="€" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" /> 

     </TableRow> 


     <TableRow> 

      <Button 
       android:id="@+id/buttonNaoColocar" 
       android:text="Cancel" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:onClick="onClick"/> 

      <Button 
       android:id="@+id/buttonOk" 
       android:text="Ok" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:onClick="onClick"/> 

     </TableRow> 

    </TableLayout> 

</LinearLayout> 

Ich habe versucht, diese Situation mit "android: cursorVisible =" zu lösen true“ oder sogar "android: textcolor =" # 000000", ich habe auch versucht, "android: fokussierbarem =" true“ "android:.? focusableInTouchMode =" true "" aber das Problem weiterhin besteht, kann ich geben nicht auf EditText

können Sie mir bitte helfen

+0

Der Code, den Sie gaben, sollte in Ordnung sein. Es könnte durch etwas über ... verursacht werden. –

+0

Machen Sie irgendetwas damit in Ihren Java-Dateien? – mkorcha

+0

Ich denke, die Größe des Bearbeitungstextes ist zu klein, um darauf zu klicken. Es hat keinen Textinhalt und hat wrap_content für Breite und Höhe festgelegt. Versuchen Sie, die Breite und Höhe des Bearbeitungstextes auf 100 dpi zu prüfen, um zu überprüfen, ob es immer noch nicht funktioniert. – CurlyCorvus

Antwort

2

Sie wollen wahrscheinlich so etwas wie:

<EditText 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:inputType="number" 
     android:textColor="#000000" 
     android:cursorVisible="true" 
     android:ems="10" 
     android:id="@+id/editTextMeta" 
     android:layout_gravity="center_vertical" 
     android:focusable="true" 
     android:focusableInTouchMode="true" /> 
  • entfernt Gewicht (nicht verwendete)
+1

Probleme bestehen bleibt – porthfind

+0

Perfekt .... Gearbeitet! :) Danke –

0

Wie andere gesagt haben, sieht der Code, den Sie oben haben, wie es ein Problem nicht verursachen würde. Das bringt mich dazu, zu denken, wenn Sie das Objekt in Ihren Java-Datei (en) machen, könnten Sie sich mit einer Einstellung beschäftigen. Ich würde Text, wo das Problem ergibt sich aus durch eine Menge der Tags aus dem Bearbeiten von Textfeld zu beseitigen, und machen es so gering wie möglich wie

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="number" 
    android:id="@+id/editTextMeta" 
/> 
0

Überprüfen Sie, ob Sie ein setOnKeyListener haben, wo immer Sie EditText haben und sein Sie sicher, dass Sie falsch zurück, wenn Sie das Ereignis nicht brauchen, zum Beispiel:

OnKeyListener listener = new OnKeyListener() { 
     @Override 
     public boolean onKey(View v, int keyCode, KeyEvent event) { 
      if (keyCode == KeyEvent.KEYCODE_BACK) { 
       //Do something 
       return true; 
      } 
      return false; 
     } 
    }; 
+0

Ich hatte dieses Problem, und es war eigentlich meine Emulatoreinstellungen. Gehen Sie zum Desktop des Emulators und versuchen Sie, den Text dort einzugeben - wenn es immer noch nicht funktioniert, gehen Sie zu tools/AVD Manager, wählen Sie Ihren Emulator, klicken Sie auf Erweiterte Einstellungen, und aktivieren Sie die "Tastatureingabe aktivieren". –

2

ich bin auf das Gebiet der Android Entwicklung neu. Nun, ich hatte das gleiche Problem. Also habe ich gesetzt gerade

android:text="" 

dies den Text verursacht zu erscheinen, wenn ich es in der EditText getippt. Ich bin mir nicht sicher, warum das funktioniert, aber ich spreche nur aus eigener Erfahrung

+0

Willkommen bei stackoverflow .... Bitte, [lesen Sie diesen Link] (http: // stackoverflow.com/help/how-to-antwort) um deine Antworten zu verbessern. Während das, was Sie geschrieben haben, das Problem möglicherweise beheben kann, wird nur der Standardfeldwert auf leer gesetzt. Das vorliegende Problem ist noch unklar. Diese Seite funktioniert am besten, wenn Sie dem "Fragenden Benutzer" Wege erklären können, ein Problem zu lösen, Dokumente zu lesen und zu verstehen, was das Problem verursacht, oder sogar Vorschläge, wie Sie seinen Code verbessern können (Sie erhalten später Kommentare). Beantworte keine Fragen von "Ich weiß nicht", "Hier, probier das" noch "Mein Zeug funktioniert" – Bonatti

+1

Hhhhhhmmmmm, wenn eine Antwort das Problem potenziell behebt, würde ich es persönlich nützlich finden. Es ist vielleicht nicht das Beste, aber die Option ist immer offen für den Fragesteller, das Wissen selbst zu suchen (in diesem Fall ist mein persönliches Interesse durch die Kombination von Antwort und Antwort hier ausgelöst). Obwohl ich gleichzeitig verstehe, dass die beste Vorgehensweise darin besteht, eine Antwort mit einigen zusätzlichen Erklärungen zu begleiten, sehe ich Ihren Punkt Bonatti und danke Ihnen, dass Sie sich die Zeit genommen haben, einem neuen Benutzer auf diese Weise zu helfen. Ich frage mich, ob es in Meta diesbezüglich Präzedenzfälle gibt ... –

+0

Danke Bonatti und Peter für deine wertvollen Kommentare. Ich werde sicher versuchen, nächstes Mal ausführlicher zu antworten –

Verwandte Themen