У меня есть специальный адаптер, который содержит TextViews
и ProgressBars
. Когда пользователь нажимает на каждую строку, я хочу показать ProgressBar
выбранной строки и обновить значения. Это мой адаптер:
public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnLongClickListener {
public TextView from, subject;
public ProgressBar progressBar;
public MyViewHolder(View view) {
super(view);
from = (TextView) view.findViewById(R.id.from);
subject = (TextView) view.findViewById(R.id.txt_primary);
progressBar = (ProgressBar) view.findViewById(R.id.progressBar);
view.setOnLongClickListener(this);
}
}
и это событие моего клика в MainActivity
@Override
public void onMessageRowClicked(int position) {
if (mAdapter.getSelectedItemCount() > 0) {
enableActionMode(position);
} else {
message = messages.get(position);
message.setRead(true);
messages.set(position, message);
mAdapter.notifyDataSetChanged();
downloadFile(message.getFrom(), getBaseUrl() + message.getLink());
}
}
и это моя загрузка файла
private void downloadFile(final String filename, final String path){
int downloadId = PRDownloader.download(path, dPath, mylFileName)
.build()
.setOnProgressListener(new OnProgressListener() {
@Override
public void onProgress(Progress progress) {
}
})
.start(new OnDownloadListener() {
@Override
public void onDownloadComplete() {
}
}
@Override
public void onError(Error error) {
}
});
}
}).execute(path);
}
}
Я новичок и не знаю, что делать.