Gibt es eine API, um die Grenze zu setzen? von Zeichen in SearchView?Können wir die Anzahl der Zeichen in Edittext von SearchView in Android begrenzen?
Antwort
EditText et = new EditText(this);
int maxLength = 3;
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(maxLength);
et.setFilters(FilterArray);
Ich spreche über SearchView, wo wir onClose(), onQueryTextChange (String newText), onQueryTextSubmit (String-Abfrage) überschreiben müssen. –
im XML-Layout diese versuchen ..
android:maxLength="20" //20 is number of characters.
Es kann Ihnen helfen ..
Haben Sie gesehen, [Kommentar] (http://stackoverflow.com/questions/10914539/can-we-limit-the-number-of-character-in-edittext-of-searchview-in-android#comment14233570_10914539) – Praveenkumar
In SearchView gibt es keine Zeichenlänge. –
Suchansicht hat nicht "maxLength" –
Mit diesem Code es-Suche wird nur, wenn die Länge kleiner oder gleich 5 ist. Sie können es entsprechend ändern, indem Sie true von onQueryTextChange() zurückgeben, wenn text> 5.
final SearchView searchView = (SearchView) mSearchMenuItem.getActionView();
searchView.setSearchableInfo(searchManager.getSearchableInfo(mActivity.getSearchComponentName()));
searchView.setIconifiedByDefault(true);
searchView.setSubmitButtonEnabled(true);
searchView.setOnQueryTextListener(new OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String arg0) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onQueryTextChange(String arg0) {
if(arg0.length()>5){
System.out.println("Text character is more than 5");
searchView.setQuery(arg0.substring(0,5), false);
}
return false;
}
});
EditText et = (EditText)searchView.findViewById(searchView.getContext().getResources()
.getIdentifier("android:id/search_src_text", null, null));
et.setFilters(new InputFilter[] { new InputFilter.LengthFilter({max_text_length}) });
ich folgende Code-Schnipsel bin mit:
TextView et = (TextView) searchView.findViewById(R.id.search_src_text);
et.setFilters(new InputFilter[]{new InputFilter.LengthFilter(10)});
'Edittext' XML-Attribut' android: maxLength = 15' werden nur 15 Zeichen ermöglichen. Ist das nur du brauchst? – Praveenkumar
Dies funktioniert möglicherweise nicht ... 'SearchView' erweitert' EditText' nicht. Ich weiß, dass 'inputType' aus irgendeinem Grund nicht in' SearchView' funktioniert. –
@AlexLockwood Darf ich wissen, was die 'SearchView' ist Ist das wie 'AutocomplteTextView' – Praveenkumar