位置列表问题-Android应用程序崩溃

jq6vz3qz  于 2023-05-12  发布在  Android
关注(0)|答案(1)|浏览(123)

我正在尝试位置和列表视图。我正在获取位置结果,并尝试使用以下代码创建位置结果的列表视图:

ListView locationList = (ListView)findViewById(R.id.ListView01);
        String[] items = new String[]{};

        try {
            Geocoder geocoder       =   new Geocoder(this, Locale.getDefault());
            List<Address> addresses =   geocoder.getFromLocation(LATITUDE, LONGITUDE, 5);
            address_textview.setText( ""+addresses );
            
            Address[] addresses_array       =   new Address[addresses.size()];
            addresses.toArray(addresses_array);
            
            for( int i = 0; i < addresses_array.length; i++ ){
                items[i]    =   addresses_array[i].getPostalCode();
            }
                   
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        ArrayAdapter<String> adapter    =   new ArrayAdapter<String>(this, R.layout.list_item, items);
        locationList.setAdapter(adapter);

我的问题是,当我尝试在forloop中写入items数组(items[i] = addresses_array[i].getPostalCode())时,我的应用程序崩溃了。

lh80um4z

lh80um4z1#

items声明为数组,并将其分配为零大小。尝试使用List<string>(并调整您的适配器,或使用List<T>.toArray)。

相关问题