Android autocompleteTextview自动补齐
2013-01-01 11:18
337 查看
像在百度输入框中一样,输入几个字后,下面会列出相近的搜索项。Android可以利用AutoCompleteTextView来实现,实现方法如下:
第一步,布局文件:
<AutoCompleteTextView
android:id="@+id/autoCompleteChannelName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:completionHint="请选择营业厅"
android:completionThreshold="2" //表示输入两个字后开始找相匹配的项
android:ems="10" >
<requestFocus />
</AutoCompleteTextView>
第二步,activity后台实现:
//智能提示框内容
private String[] channelName = {"aa","bb","baa","aacd","aaadd"};
//下拉框中的内容对应的ID
private long [] channelIds={1,2,3,4,5};
//下拉框所需的适配器
private ArrayAdapter<String> autoAdapter;
//控件初始化:
autoCompleteTextView = (AutoCompleteTextView)findViewById(R.id.autoCompleteChannelName);
//初始化下拉框中的内容:
autoAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, channelName);
autoCompleteTextView.setAdapter(autoAdapter);
//绑定选择项的事件:
myOnItemSelectListen ml = new myOnItemSelectListen(this,autoAdapter);
autoCompleteTextView.setOnItemClickListener(ml);
// 用户选择下拉框事件()
class myOnItemSelectListen implements OnItemClickListener{
private ArrayAdapter<String> myArrayAdapter;
private Activity mcontext;
public myOnItemSelectListen(Activity c,ArrayAdapter<String> ad){
this.myArrayAdapter = ad;
this.mcontext = c;
}
public void onItemClick(AdapterView<?> parent, View v, int pos,long row) {
for(int i=0;i<channelIds.length;i++){
if (autoCompleteTextView.getText().toString().equals(channelName[i])) {
dt.setChannel_id(channelIds[i]);
break;
}
}
parent.setVisibility(View.VISIBLE);
}
}
第一步,布局文件:
<AutoCompleteTextView
android:id="@+id/autoCompleteChannelName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:completionHint="请选择营业厅"
android:completionThreshold="2" //表示输入两个字后开始找相匹配的项
android:ems="10" >
<requestFocus />
</AutoCompleteTextView>
第二步,activity后台实现:
//智能提示框内容
private String[] channelName = {"aa","bb","baa","aacd","aaadd"};
//下拉框中的内容对应的ID
private long [] channelIds={1,2,3,4,5};
//下拉框所需的适配器
private ArrayAdapter<String> autoAdapter;
//控件初始化:
autoCompleteTextView = (AutoCompleteTextView)findViewById(R.id.autoCompleteChannelName);
//初始化下拉框中的内容:
autoAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, channelName);
autoCompleteTextView.setAdapter(autoAdapter);
//绑定选择项的事件:
myOnItemSelectListen ml = new myOnItemSelectListen(this,autoAdapter);
autoCompleteTextView.setOnItemClickListener(ml);
// 用户选择下拉框事件()
class myOnItemSelectListen implements OnItemClickListener{
private ArrayAdapter<String> myArrayAdapter;
private Activity mcontext;
public myOnItemSelectListen(Activity c,ArrayAdapter<String> ad){
this.myArrayAdapter = ad;
this.mcontext = c;
}
public void onItemClick(AdapterView<?> parent, View v, int pos,long row) {
for(int i=0;i<channelIds.length;i++){
if (autoCompleteTextView.getText().toString().equals(channelName[i])) {
dt.setChannel_id(channelIds[i]);
break;
}
}
parent.setVisibility(View.VISIBLE);
}
}
相关文章推荐
- Android( 基本控件)、progressBar+Handler(进度条)、AutoCompleteTextView(单行自动补全)、MultiAutoCompleteTextView(多行补全)
- android AutoCompleteTextView自定义的自动补全
- Android自动提示--AutoCompleteTextView、MultiAutoCompleteTextView
- AutoCompleteTextView,MultiAutoCompleteTextView 自动补齐
- Android AutoCompleteTextView自动提示文本框
- android autocompletetextview(自动匹配控件)类比listview
- Android学习系列之控件 AutoCompleteTextView邮箱后缀自动补全
- Android UI控件系列:AutoCompleteTextView(自动提示)
- Android学习 19 ->自动提示输入AutoCompleteTextView
- android文本自动提示 AutoCompleteTextView的实例2则
- Android——自动完成输入框提示功能的菜单_AutoCompleteTextView
- Android AutoCompleteTextView连接数据库自动提示的方法(附demo源码下载)
- android笔记 自动补全输入的MultiAutoCompleteTextView
- 第50章、自动提示AutoCompleteTextView(从零开始学Android)
- Android 之 自动匹配字符AutoCompleteTextView
- Android之UI学习篇五:AutoCompleteTextView自动完成输入内容
- Android自动提示控件AutoCompleteTextView
- Android基础入门教程——2.4.11 AutoCompleteTextView(自动完成文本框)的基本使用
- android AutoCompleteTextView自动完成文本
- Android入门教程四十四之 AutoCompleteTextView(自动完成文本框)的基本使用