首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android AutoCompleteTextView NullPointerException

Android AutoCompleteTextView NullPointerException
EN

Stack Overflow用户
提问于 2015-02-27 10:03:57
回答 3查看 1.1K关注 0票数 1

我正在尝试用AutoCompleteTextView创建一个自动完整的文本输入字段。但是当我启动应用程序时,它会中断,日志文件会报告NullPointerException。

在onCreate中有:

代码语言:javascript
复制
    ArrayAdapter<String> adapter = new ArrayAdapter<String>  
     (this, android.R.layout.select_dialog_item, codes);  
    AutoCompleteTextView actv = (AutoCompleteTextView)findViewById(R.id.actvPrompt); 
    if(actv == null) {
        Log.e("MyApp", "actv is null");
    }
    actv.setAdapter(adapter); // This line throws exception.

在xml布局中:

代码语言:javascript
复制
<AutoCompleteTextView
    android:id="@+id/actvPrompt"
    android:layout_gravity="center" 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">   
</AutoCompleteTextView> 

我检查了“代码”数组,它填充得很好。

为什么actv为空?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-02-27 10:10:38

很可能您在onCreate()中缺少了onCreate(),或者您没有在 findViewById()之前使用,或者使用的是不同的layout.xml。

票数 1
EN

Stack Overflow用户

发布于 2015-02-27 10:15:16

将代码替换为:

代码语言:javascript
复制
    @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);//This is your layout<-----

   ArrayAdapter<String> adapter = new ArrayAdapter<String>  
     (YourClass.this, android.R.layout.select_dialog_item, codes);  


   AutoCompleteTextView actv = (AutoCompleteTextView)findViewById(R.id.actvPrompt); 
      actv.setAdapter(adapter);

还尝试更改XML以实现以下目的:

代码语言:javascript
复制
<AutoCompleteTextView
android:id="@+id/actvPrompt"
android:layout_gravity="center" 
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

希望它有帮助:)

票数 1
EN

Stack Overflow用户

发布于 2015-02-27 10:14:49

而不是这个关键字,您必须使用ClassName.this

ArrayAdapter适配器=新ArrayAdapter

代码语言:javascript
复制
  (Classname.this, android.R.layout.select\_dialog\_item, codes);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28762344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档