博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

011、AutoCompleteTextView控件,具有自动提示功能的菜单

Posted on 2013-09-16 16:39  mz_zyh  阅读(146)  评论(0编辑  收藏  举报
1、AutoCompleteTextView控件可以实现自动提示功能
  通过预先设置好的字符串数组放入ArrayAdapter中,最后利用AutoCompleteTextView.setAdapter方法就可以让该控件具有自动提示功能。
 
  只要是下拉菜单的项目,都必须使用ArrayAdapter对象
 
 
2、MultiAutoCompleteTextView控件,继承自CompleteTextView,它可以在输入框一直增加新的选择值,必须要setTokenizer,否则会出现错误。
 
例子:
        ((AutoCompleteTextView) findViewById(R.id.actv))
                .setAdapter(new ArrayAdapter<String>(
                        AutoCompleteTextViewActivity.this,
                        android.R.layout.simple_dropdown_item_1line, strs));
        MultiAutoCompleteTextView mactv = ((MultiAutoCompleteTextView) findViewById(R.id.mactv));
        
        mactv.setAdapter(new ArrayAdapter<String>(
                AutoCompleteTextViewActivity.this,
                android.R.layout.simple_dropdown_item_1line, strs));
        mactv.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

 

ArrayAdapter:
  android.widget.ArrayAdapter.ArrayAdapter(Context context, int textViewResourcedId, String[] objects)
需要传递3个参数才能构造:
Context context
现有程序的context
int textViewResourceId
要使用的Layout文件Resource ID, 当中必须包含一个TextView
String[] objects
要放入的字符串数组
 
 
在GridView的Widget XML属性名称及GridView对象的方法对应如下:
 
XML属性名称 对应的对象方法
android:columnWidth setColumnWidth(int)
android:gravity setGravity(int)
android:horizontalSpacing setHorizontalSpacing(int)
android:numColumns setNumColumns(int)
android:stretchMode setStretchMode(int)
android:verticalSpacing setVerticalSpacing(int)