Ich glaube nicht, dass Sie benutzerdefinierte Adapter erstellen müssen. seine Standardfunktionalität, die Sie wollen. check this
hier ich habe Array wie:
private static final String[] COUNTRIES = new String[] { "Belgium",
"France", "France_", "Italy", "Germany", "Spain","abcf","FFa","FFb","bFF","aFF" };
wenn i ff suchen seine dann geben Sie mir nur 2("FFa","FFb")
Vorschlag nicht 4("FFa","FFb","bFF","aFF")
ich dies in ActionBar verwendet haben. Sie können dies auch im Layout verwenden. weil sein benutzerdefiniertes Layout in ActionBar.
public class TestActivity extends Activity {
/** Called when the activity is first created. */
private static final String[] COUNTRIES = new String[] { "Belgium",
"France", "France_", "Italy", "Germany", "Spain","abcf","FFa","FFb","bFF","aFF" };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowCustomEnabled(true);
// actionBar.setDisplayShowTitleEnabled(false);
// actionBar.setIcon(R.drawable.ic_action_search);
LayoutInflater inflator = (LayoutInflater) this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.test, null);
actionBar.setCustomView(v);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, COUNTRIES);
AutoCompleteTextView textView = (AutoCompleteTextView) v
.findViewById(R.id.editText1);
textView.setAdapter(adapter);
}
}
test.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Action Bar:"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#FFFFFF" />
<AutoCompleteTextView
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:imeOptions="actionSearch"
android:inputType="textAutoComplete|textAutoCorrect"
android:textColor="#FFFFFF" >
<requestFocus />
</AutoCompleteTextView>
</LinearLayout>
Sie ideal die Schwelle 2-3 nicht 1 gesetzt Schuss, wird dies dazu führen, zu viel zu zeigen, und eine Menge an Verarbeitungszeit verschwenden. – JoxTraex
Sie müssen Ihren benutzerdefinierten Adpter mit Filter – Pragnani
@Pragnani wie benutzerdefinierte Adapter mit Filter verwenden. – Yugesh