大家在使用百度搜索框的时候,会发现好像都有联想,类似这种
安卓中也提供这样的控件,AutoCompleteTextView
xml布局:
<AutoCompleteTextView
android:id="@+id/auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
main代码:
AutoCompleteTextView auto = (AutoCompleteTextView) findViewById(R.id.auto);
<span style="white-space:pre"> </span>String[] attr = {"AA","A","AAA","BB","V","BV"};
<span style="white-space:pre"> </span>ArrayAdapter<String> mAdapter = new ArrayAdapter<>(this, R.layout.spinner_item,R.id.tv,attr);
<span style="white-space:pre"> </span>auto.setAdapter(mAdapter);
<span style="white-space:pre"> </span>//设置匹配个数 默认是2个字符
<span style="white-space:pre"> </span>auto.setThreshold(1);
<span style="white-space:pre"> </span>//设置提示信息
<span style="white-space:pre"> </span>auto.setCompletionHint("单击选择符合的一项");<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>auto.setDropDownBackgroundResource(R.drawable.yellow);<span style="white-space:pre"> </span>//设置背景图片
<span style="white-space:pre"> </span>auto.setDropDownBackgroundDrawable(getResources().getDrawable(R.drawable.ic_launcher));
<span style="white-space:pre"> </span>auto.setDropDownHeight(200);<span style="white-space:pre"> </span>//设置高度 默认都是充满的
<span style="white-space:pre"> </span>auto.setDropDownWidth(200);<span style="white-space:pre"> </span>//设置宽度 默认都是充满的
<span style="white-space:pre"> </span>auto.setOnItemClickListener(new OnItemClickListener() {
<span style="white-space:pre"> </span>@Override
<span style="white-space:pre"> </span>public void onItemClick(AdapterView<?> parent, View view,
<span style="white-space:pre"> </span>int position, long id) {
<span style="white-space:pre"> </span>String ss = parent.getItemAtPosition(position).toString();
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>});auto = (AutoCompleteTextView) findViewById(R.id.auto);
String[] attr = {"AA","A","AAA","BB","V","BV"};
ArrayAdapter<String> mAdapter = new ArrayAdapter<>(this, R.layout.spinner_item,R.id.tv,attr);
auto.setAdapter(mAdapter);
//设置匹配个数 默认是2个字符
auto.setThreshold(1);
//设置提示信息
auto.setCompletionHint("单击选择符合的一项");
auto.setDropDownBackgroundResource(R.drawable.yellow); //设置背景图片
auto.setDropDownBackgroundDrawable(getResources().getDrawable(R.drawable.ic_launcher));
auto.setDropDownHeight(200); //设置高度 默认都是充满的
auto.setDropDownWidth(200); //设置宽度 默认都是充满的
auto.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String ss = parent.getItemAtPosition(position).toString();
}
});
这里上面设置的背景是下面整个下拉框,另外宽度和高度这里自定义,而不是默认的充满。