2014-04-25 6 views
7

Ich habe eine EditText. Wenn ich weniger als 8 Zeichen habe, hat die EditText eine minimale Breite. Ich möchte wrap_content verwenden.Android EditText Breite weil Tipp

Es wird verursacht, weil durch die hint.

Wie kann ich das lösen? Ich habe alles versucht.

ich so will:

enter image description here

Hier meinen Code

<EditText 
     android:id="@+id/et_actionbar_title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="YOLO" 
     android:hint="New team" 
     android:gravity="center" 
     android:textColor="@color/gray1" 
     android:textStyle="bold" 
     android:background="@color/gold" 
     android:layout_centerInParent="true" 

     android:minWidth="0dp" 
     android:minEms="0" 
     android:minHeight="0dp" 
     android:paddingLeft="0dp" 
     android:layout_marginLeft="0dp" 

     /> 

Antwort

17

Der einzige Weg, dies zu tun ist, den Hinweis zu entfernen, oder die Länge des Hinweis Zeichenfolge zu reduzieren. Wenn Sie den Hinweis nicht entfernen möchten, blenden Sie ihn aus, wenn ein Text in EditText eingegeben wird.

editText.addTextChangedListener(new TextWatcher() { 

      @Override 
      public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { 

       if(!TextUtils.isEmpty(editText.getText().toString())){ 
        editText.setHint(""); 
       }else{ 
        edittext.setHint(R.string.hint); 
       } 

      } 

      @Override 
      public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
        int arg3) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void afterTextChanged(Editable arg0) { 
       // TODO Auto-generated method stub 

      } 
     }); 
+0

Vielen Dank! Das hat mir gut getan! Ich kann deine Frage nicht beantworten. Ich brauche 2 Ruf. Wenn Sie meine Frage abstimmen, kann ich Ihre Antwort abstimmen :) – BertLeonaers

0

Ich denke, es ist nicht möglich, ist die Schrift des Hinweises als Schriftart ändern gleiche gilt für Hinweis und Text

aber die Arbeit um

Erste die Textgröße eingestellt wird

android:textSize="20sp" 

Sekunde

dann auf Text ändern Hörer ändern Sie die Textgröße programmatisch zu 10sp. dann können Sie möglicherweise Wrap-Inhalt verwenden ...