[英]Populating listview from arraylist
我想用数组列表填充列表视图。 阵列列表是从soap Web服务响应中获取的。
我使用它如下:
mylistview = (ListView)findViewById(R.id.list);
listAdapter = new ArrayAdapter<Plant>(MainActivity.this,
android.R.layout.simple_list_item_1, array_books);
mylistview.setAdapter(listAdapter);
在列表视图中显示如下:
Book{id=1; name= C++; imagepath=https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GW3ixVIGHLrrXb2yN_6i;}
Book{id=2; name= Java; imagepath=https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GW3ixVyN_6i;}
Book{id=3; name=Android; imagepath=https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GW3HLrrXb2yN_6i;}
我想通过从图像视图中的路径检索图像来显示图像,并仅显示书名,例如:image ................ Java
当我更改布局
listAdapter = new ArrayAdapter<Book>(MainActivity.this,
android.R.layout.row, array_books);
它给出了行无法解析为资源的错误。 但是row.xml存在于布局文件夹中。 如何更正此错误并在列表视图中显示所需的项目?
尝试这个
listAdapter = new ArrayAdapter<Plant>(MainActivity.this,
R.layout.row, array_books);// Change android.R.layout.row to R.layout.row
您的行出现在layout
因此需要使用R.layout.row
查找
使用R.layout.row而不是android.R.layout.row
正如@Giru所指出的,如果您的xml文件row.xml位于布局文件夹中,则android.R无法引用它
android.R对象具有对与Android捆绑在一起的资源的引用。
您的资源仅在your.package.R下,因此只需删除文件“ android”即可。 并有
listAdapter = new ArrayAdapter<Plant>(MainActivity.this,
R.layout.row, array_books);
而且你应该很好走。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.