是否可以在 android 中以编程方式创建和填充 AutoCompleteTextView?

Posted

技术标签:

【中文标题】是否可以在 android 中以编程方式创建和填充 AutoCompleteTextView?【英文标题】:Is it possible to create and fill programmatically an AutoCompleteTextView in android? 【发布时间】:2015-03-10 14:33:49 【问题描述】:

我有几周的 android 经验,我想以编程方式创建和填充 AutoCompleteTextView,但我不能,因为 Activity 停止了。 这是我写的代码:

    public class ItemEditor extends LinearLayout 
  String[]  itemList =  "one", "two", "three" ;

  public ItemEditor(Context context) 
    super(context);
    this.makeEditor(context);
  

  void makeEditor(Context context) 
    AutoCompleteTextView item = new AutoCompleteTextView(context);
    item.setId(View.generateViewId());

    ArrayAdapter<String> itemArrayAdapter = new ArrayAdapter<String>(context,
        item.getId(), itemList);

    item.setAdapter(itemArrayAdapter);

    this.addView(item);
  

我使用它如下:

public class ItemEditorActivity extends Activity 

  @Override
  protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    // setContentView(R.layout.activity_message_set_editor);
    this.setContentView(new MessageSetEditor(this));
  
...

只要我尝试显示 ItemEditorActivity,它就会停止。 任何帮助,将不胜感激。 问候

【问题讨论】:

【参考方案1】:

我自己解决了这个问题:在数组适配器声明中,我使用了自动完成小部件的 id 而不是 android.R.layout.select_dialog_item

【讨论】:

以上是关于是否可以在 android 中以编程方式创建和填充 AutoCompleteTextView?的主要内容,如果未能解决你的问题,请参考以下文章

约束布局中以编程方式添加的按钮将忽略约束 - Android

如何在 Android 中以编程方式启用禁用 GPS? [复制]

如何在android中以编程方式创建多个列表

如何在android中以编程方式关闭3G数据连接?

以编程方式获取 Android 手机型号,如何在 android 中以编程方式获取设备名称和型号?

在 Android 中以编程方式打开位置提供程序