`
dyllove98
  • 浏览: 1381970 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:38322
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:78625
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:131758
社区版块
存档分类
最新评论

Android自动补全提示

 
阅读更多

自动补全提示最主要的是使用AutoCompleteTextView控件,继而从与控件关联的ArrayAdapter提供的字符串集合得到提示。

    先上图

 

wKioL1RnicvDHL1GAABrTtytVXk343.jpg

 

AutoCompleteTextViewActivity.java代码如下:

public class AutoCompleteTextViewActivity extends Activity {
       @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.autocomplete);
            setTitle("AutoCompleteTextView_Activity");
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                this,
                android.R.layout.simple_dropdown_item_1line,
                COUNTRIES);//第3个参数为提供数据的数组名
            AutoCompleteTextView autotextView = (AutoCompleteTextView) findViewById(R.id.auto_complete);
            autotextView.setAdapter(adapter);//将adapter适配器添加到auto..对象中
            autotextView.setThreshold(1);//设置输入几个字母开始关联,默认是2
        }
    static final String[] COUNTRIES = new String[] {    //设置数据源
        "China" ,"Russia", "Germany","Ukraine", "Belarus",
        "USA" ,"China1" ,"China12", "Germany1",
        "Russia2", "Belarus1", "USA1" 
        };
}

 layout中XML文件如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content">
 
   <AutoCompleteTextView android:id="@+id/auto_complete"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"/>
</LinearLayout>

 当然,为了以后修改数据源及代码的方便,建议将数据添加到在layout下的strings.xml文件中去

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
    <string-array name="countries_array">  
        <item>China</item>  
        <item>China1</item>  
        <item>China12</item>                 
    </string-array>  
</resources>

 再将原先的数据源修改为如下即可

String[] COUNTRIES = getResources().getStringArray(R.array.countries_array);

 

 

欢迎大家访问我的个人网站 萌萌的IT人
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics