2016-04-10 16 views
1

Ich habe eine AutoCompleteTextView und ich möchte einen Filter darauf einstellen, das Problem, das ich habe, ist, wenn ich gehe, um etwas zu tippen, wird es nur lassen Sie mich 1 Zeichen in das Textfeld eingeben. wenn ich textView.setFilters aus dem Code entferne, funktioniert es gut, ich habe nur keine Filter. Ich habe auch versucht android:textAllCaps="true" in meiner XML-Datei und es funktioniert nicht. jede Hilfe wäre großartig, danke.AutoCompleteTextView Filter funktioniert nicht richtig

Mein Code:

AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.textfield); 
    String[] MyArray = getResources().getStringArray(R.array.myarray); 
    ArrayAdapter<String> adapter = 
      new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, MyArray); 
    textView.setFilters(new InputFilter[]{new InputFilter.AllCaps(), new InputFilter.LengthFilter(40)}); 
    textView.setAdapter(adapter); 

Xml

<RelativeLayout 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" 
    tools:context=".myactivity"> 

    <AutoCompleteTextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/textfield" 
     android:hint="Search..."/> 

    <Button 
     android:id="@+id/btn" 
     android:onClick="buttonClickHandler" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Do something" 
     android:layout_toRightOf="@+id/textfield"/> 
</RelativeLayout> 
+0

Ihre xml zu veröffentlichen heraus –

+0

@VivekMishra es die zugegebene Frage – Greg432

+0

Ich denke, das ist Ihr Schuldiger 'new InputFilter.AllCaps()'. Was ich verstehe, ist, dass Sie mit diesem Filter keine Kleinbuchstaben eingeben können. Versuchen Sie, Großbuchstaben in Ihre Textansicht einzugeben –

Antwort

0

Mit Hilfe der Post @ pskink ich es

AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.textfield); 
String[] MyArray = getResources().getStringArray(R.array.myarray); 
ArrayAdapter<String> adapter = 
     new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, MyArray); 
     textView.setThreshold(1); 
     InputFilter[] filters = { 
      new InputFilter.AllCaps(), 
      new InputFilter.LengthFilter(40),}; 
    textView.setFilters(filters); 
textView.setAdapter(adapter);