下载管理器适用于recyclerview

时间:2018-08-12 03:23:33

标签: android android-recyclerview android-download-manager

我遍历了Internet上几乎所有有关从Internet下载文件的内容,并且其中的一个教程有效。
在该教程中,他们使用了下载管理器,但是它只用于按钮..i正在使用一个带有单个dwonload按钮的项目的recyclerview,并且项目列表中的每个下载按钮具有不同的url,请告诉我该怎么做!
我尝试过的方法:(我知道这不是df['timestamp'] = pd.to_datetime(df['timestamp']).dt.strftime('%Y-%m-%d') 的正确语法,只是为了向您展示我的需求)

我的应用程序模拟器中的照片!

pic

RVadapter.java

MATCH p=(n)-[*2..3]-(n) RETURN n, length(p), nodes(p), relationships(p)

Mainactivity.java

personViewHolder.personbutton.setOnClickListener

1 个答案:

答案 0 :(得分:1)

您可以简单地将URL保留在Person对象中,然后只要单击一次,只需将其检索并将其发送给下载管理器即可。 会是这样的:

personViewHolder.personbutton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
                    Person person = persons.get(i);
                    String url = person.url;
                    DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
                    DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
                    request.setDescription(person.name);
                    request.setTitle(person.description);

                    request.allowScanningByMediaScanner();
                    request.setNotificationVisibility(
                    DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);

                    request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "file"+person.name+".mp4");
                    manager.enqueue(request);
        }});