[英]How to change text in Fragment (outside recyclerVIew) from within RecyclerView viewHolder onClick
[英]How to update a progressbar that is instantiated within a RecyclerView's ViewHolder, from a different class?
我有一個Viewholder,在其中實例化連接到每一行的進度條:
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);
}
}
這是由SubmissionViewHolder
實現的ISubmissions
接口
public interface ISubmissions {
void updateProgress(String s);
}
我想要實現的是,從不同的類更新進度條,如下所示:
public class DownloadStream {
public DownloadStream() {
ISubmissions submissions = new Submissions$SubmissionViewHolder$$ViewBinder();
}
我無法實例化類DownloadStream
的submissions
變量。 我究竟做錯了什么?
注意: SubmissionViewHolder
是擴展RecyclerView適配器的類的內部類。
代替創建接口,在RecyclerView
上使用findViewHolderForItemId
。 它將返回ViewHolder
。
您只需將其ViewHolder
為自定義ViewHolder
並使用updateProgress()
方法。
RecyclerView
另一個有趣的功能是:
findViewHolderForAdapterPosition
findViewHolderForItemId
findViewHolderForLayoutPosition
getChildAt
getChildViewHolder
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.