Java 下载完成后如何隐藏微调器(进度条)?

Java 下载完成后如何隐藏微调器(进度条)?,java,android,android-recyclerview,download,android-cardview,Java,Android,Android Recyclerview,Download,Android Cardview,我正在开发一个下载文件的应用程序,如果你点击其中一个项目,我有recyclerview->cardview(10-20个项目) 下载文件的过程开始了,同时我添加了一个微调器,让用户知道下载正在进行中 但我在下载完成后取消微调器时遇到问题,因为我不知道如何引用回特定的cardview 在recyclerview上,是否需要传递卡片视图的位置、微调器(progressbar)id 任何帮助都将不胜感激,谢谢 从我的适配器类 @Override public void onBindViewHolder

我正在开发一个下载文件的应用程序,如果你点击其中一个项目,我有recyclerview->cardview(10-20个项目) 下载文件的过程开始了,同时我添加了一个微调器,让用户知道下载正在进行中 但我在下载完成后取消微调器时遇到问题,因为我不知道如何引用回特定的cardview 在recyclerview上,是否需要传递卡片视图的位置、微调器(progressbar)id

任何帮助都将不胜感激,谢谢

从我的适配器类

@Override
public void onBindViewHolder(@NonNull final FirstLevelViewHolder holder, final int position) {
        ItemsLevel2 currentItem = fItems.get(position);

        final String id             = currentItem.getId();
        final String name           = currentItem.getName(); 

        holder.id.setText(id);
        holder.ame.setText(name);   

        holder.fImageButton .setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) { 
                holder.img.setVisibility(View.INVISIBLE);
                holder.spinner.setVisibility(View.VISIBLE); 
                downloadFile(name);
            }
        });
    }
这里我有下载的所有代码

downloadFile(String name) {

}

如果您是从服务器下载文件,那么应该使用AsyncTask并在
doInBackground()
方法中下载文件,在
onPreExecute()
中显示进度条,并在
onPostExecute()
中关闭微调器

公共类下载FileAsyncTask扩展AsyncTask{
@凌驾
受保护的void onPreExecute(){
super.onPreExecute();
//显示进度条
}
@凌驾
受保护的字符串背景(字符串…字符串){
//下载文件()
返回null;
}
@凌驾
受保护的void onPostExecute(字符串s){
super.onPostExecute(s);
//闭式旋转器
}
}

如果您是从服务器下载文件,那么您应该使用AsyncTask并在
doInBackground()
方法中下载您的文件,在
onPreExecute()
中显示进度条,并在
onPostExecute()中关闭微调器

公共类下载FileAsyncTask扩展AsyncTask{
@凌驾
受保护的void onPreExecute(){
super.onPreExecute();
//显示进度条
}
@凌驾
受保护的字符串背景(字符串…字符串){
//下载文件()
返回null;
}
@凌驾
受保护的void onPostExecute(字符串s){
super.onPostExecute(s);
//闭式旋转器
}
}

添加一些解释,而不仅仅是添加代码。现在连我都无法理解你写的东西。我不确定这一点:这段代码会在用户再次单击按钮时检查下载完成情况。相反,应该有一个下载完成的活动通知,以便UI可以立即处理。添加一些解释,而不仅仅是添加代码。现在连我都无法理解你写的东西。我不确定这一点:这段代码会在用户再次单击按钮时检查下载完成情况。相反,应该有一个活动通知,说明下载已完成,以便用户界面可以立即处理。您可以向我们显示您的下载文件代码吗?您可以向我们显示您的下载文件代码吗?
    int downloadFile(String name) {
     if (finish) return 1;
    }

    ////////////////////////////////////////
public void onClick(View v) { 
                    holder.spinner.setVisibility(View.VISIBLE); 
                   if( downloadFile(name))==1{
     holder.spinner.setVisibility(!View.VISIBLE); 
    }
                }
 public class DownloadFileAsyncTask extends AsyncTask<String,String,String>{

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            //show Progressbar
        }

        @Override
        protected String doInBackground(String... strings) {
            //downloadFile()
            return null;
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            //close spinner
        }

    }