简体   繁体   English

Android ListView问题加载应用程序

[英]Android ListView Problems Loading App

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_home_screen);

    String[] myHouses = new String[8];
    myHouses[0] = "Hello0";
    myHouses[1] = "Hello1";
    myHouses[2] = "Hello2";
    myHouses[3] = "Hello3";
    myHouses[4] = "Hello4";
    myHouses[5] = "Hello5";
    myHouses[6] = "Hello6";
    myHouses[7] = "Hello7";
    ArrayList<String> myHousesList =new ArrayList<>(Arrays.asList(myHouses));

    ListAdapter grumpyAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, myHousesList);
    ListView grumpyListView = (ListView) findViewById(R.id.grumpyListView);
    grumpyListView.setAdapter(grumpyAdapter);

    grumpyListView.setOnItemClickListener(
            new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    String myHouse = String.valueOf(parent.getItemAtPosition(position));
                    Toast.makeText(HomeScreen.this, myHouse, Toast.LENGTH_LONG).show();
                }
            }
    );

}

} }

Moved my error to this line: null pointer exception again: ListView grumpyListView = (ListView) findViewById(R.id.grumpyListView); 我的错误移至此行:再次出现空指针异常:ListView grumpyListView =(ListView)findViewById(R.id.grumpyListView);

如错误消息所述,您的布局有问题,无法进行夸大,请检查相应的xml布局文件。

Instead of an ListAdapter try ArrayAdapter 代替ListAdapter尝试ArrayAdapter

ArrayList<String> myHousesList=new ArrayList<>(Arrays.asList(myHouses));
ArrayAdapter<String> grumpyAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, myHousesList);
 ListView grumpyListView = (ListView) findViewById(R.id.grumpyListView);  
   grumpyListView.setAdapter(grumpyAdapter);

Try this 尝试这个

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM