2011-04-07 3 views

Répondre

2

Eh bien, vous ne pouvez pas vraiment empêcher quelqu'un d'entrer plus de quatre lignes. S'il tape simplement sans ajouter manuellement de nouvelles lignes, vous ne saurez jamais combien de lignes il a saisies.

Cependant, vous pouvez limiter le nombre de nouvelles lignes ajoutées manuellement (via la touche entrée) en accrochant sur le OnKeyListener du EditView:

EditText edit = (EditText)findViewById(R.id.edit); 
    edit.setOnKeyListener(new View.OnKeyListener() { 
     @Override 
     public boolean onKey(View v, int keyCode, KeyEvent event) { 
      if (keyCode == KeyEvent.KEYCODE_ENTER) { 
       int lineCount = ((EditText)v).getText().toString().split("\\n").length; 
       if (lineCount > 3) { 
        return true; 
       } 
      } 
      return false; 
     } 
    }); 

C'est une méthode assez hacky, mais la seule que je peux venir avec jusqu'à présent ...

+0

J'ai couru à ce problème aussi et pour le moment cela semble être le seul moyen (raisonnable) de le résoudre. –

Questions connexes