我目前正在尝试在列表视图中显示google云存储中特定文件夹中所有文件的文件名,并在单击文件名后下载该文件。但是,我无法在onitemclick侦听器中找到文件的位置,因此正在为listview中的每个项目下载文件夹中的最后一个项目。如何找到下载正确项目的位置?
这是我用于显示和单击项目的代码:
arrayList = new ArrayList<>();
listRef = storage.getInstance().getReference("uploads" + "/" + ID);
listRef.listAll().addOnSuccessListener(new OnSuccessListener<ListResult>() {
@Override
public void onSuccess(ListResult listResult) {
for (StorageReference items : listResult.getItems()) {
arrayList.add(items.getName());
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
items.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
// Got the download URL for 'users/me/profile.png'
String url = items.getDownloadUrl().toString();
filename = items.getName();
DownloadFromUrl(uri);
}
1条答案
按热度按时间pdtvr36n1#
如果我理解正确,你想找到一个项目的索引位置,你想下载。如果我错了,请纠正我。
如果该项不存在,则返回-1。
为了得到最后一个元素,你需要这样做。