我有一个视图库,我在其中实例化附加到每一行的进度条:
class SubmissionViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, ISubmissions {
@Bind(R.id.download_progress_bar)
ProgressBar progressBar;
@Override
public void updateProgress(String s) {
progressBar.setVisibility(View.VISIBLE);
progressBar.setProgress(Integer.valueOf(s));
if(Integer.valueOf(s)>=99){
progressBar.setVisibility(View.GONE);
}
}
以下是ISubmissions
SubmissionViewHolder
界面
public interface ISubmissions {
void updateProgress(String s);
}
我想要实现的是,从不同的类更新进度条,如下所示:
public class DownloadStream {
public DownloadStream() {
ISubmissions submissions = new Submissions$SubmissionViewHolder$$ViewBinder();
}
我无法在类submissions
中实例化DownloadStream
变量。我做错了什么?
注意:SubmissionViewHolder
是扩展RecyclerView适配器的类的内部类。
答案 0 :(得分:0)
不要使用界面,而是使用findViewHolderForItemId
上的RecyclerView
。它将返回ViewHolder
。
您只需将其投放到自定义ViewHolder
并使用updateProgress()
方法。
RecyclerView
的另一个有趣功能是:
findViewHolderForAdapterPosition
findViewHolderForItemId
findViewHolderForLayoutPosition
getChildAt
getChildViewHolder