一个字符串的列表,准备用listview或spinner来变现,但是设置adapter总是有问题。如下的代码简单测试是OK的, ListView listView = (ListView) findViewById(R.id.listview); String [] list={"ArrayAdapter","ArrayAdapter","ArrayAdapter","ArrayAdapter"};
ArrayAdapter<String> adapter=new ArrayAdapter<String>
    (this, android.R.layout.simple_list_item_1, list);
    listView.setAdapter(adapter);
但是放在一个Dialog下就总是出现空指针异常,
Dialog select_dialog = new Dialog(this);
select_dialog.setContentView(R.layout.select_dialog);
ListView listView = (ListView) findViewById(R.id.listview); String [] list={"ArrayAdapter","ArrayAdapter","ArrayAdapter","ArrayAdapter"};
ArrayAdapter<String> adapter=new ArrayAdapter<String>
    (this, android.R.layout.simple_list_item_1, list);
    listView.setAdapter(adapter);
高手帮忙看看,谢了

解决方案 »

  1.   

    就是在listView.setAdapter(adapter)的时候报出空指针异常的,是adapter生成失败了?为什么
      

  2.   

    调试下看,adapter倒是生成了,其实是listView生成失败了,
    为什么在Dialog里取得TextView、或ImageView、或Button对象,都是OK的,但就取不到listview,或者是spinner对象呐
    有知道的不
      

  3.   

    你看下ListView是在main.xml还是在R.layout.select_dialog中定义的,如果是在R.layout.select_dialog中定义的,那就会出现ListView为空的情况。因为View.findViewById(int id);作用是返回View中的组件,如果此id组件不在View中则返回空
      

  4.   

    这道理一说,确实明白了许多。果然高人,确实是在R.layout.select_dialog中定义。
    顺便再问下,又该如何解决那