1
세 개의 조각으로 구성된 뷰 페이지가 있습니다. 내 viewpager의 첫 페이지에는 데이터베이스의 데이터가 들어 있습니다. 어떻게하면 데이터가로드되기 바로 전에 첫 번째 페이지 만 진행률 막대를 구현할 수 있습니다. 내가 viewpager에 진행 막대를 넣으면내 뷰 페이지의 첫 번째 페이지에만있는 진행 표시 줄
사용자 정의 조각이 =>
public class HomeContentFragment extends Fragment {
public static ArrayList<ShishaBar> arrayList;
public static ContentAdapter adapter;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
RecyclerView recyclerView = (RecyclerView) inflater.inflate(
R.layout.recycler_view, container, false);
adapter = new ContentAdapter();
recyclerView.setAdapter(adapter);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
new BackgroundWorker().execute();
return recyclerView;
}
public static class ViewHolder extends RecyclerView.ViewHolder {
public ImageView picture;
public TextView name;
public TextView description;
public ViewHolder(LayoutInflater inflater, ViewGroup parent) {
super(inflater.inflate(R.layout.item_card, parent, false));
picture = (ImageView) itemView.findViewById(R.id.card_image);
name = (TextView) itemView.findViewById(R.id.card_title);
description = (TextView) itemView.findViewById(R.id.card_text);
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Context ctx = v.getContext();
Intent intent = new Intent(ctx, DetailActivity.class);
intent.putExtra(DetailActivity.EXTRA_POSITION, getAdapterPosition());
ctx.startActivity(intent);
}
});
}
}
public static class ContentAdapter extends RecyclerView.Adapter<ViewHolder> {
public ContentAdapter() {
arrayList = new ArrayList<>();
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(parent.getContext()), parent);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
holder.picture.setImageBitmap(arrayList.get(position).getImage());
holder.name.setText(arrayList.get(position).getName());
holder.description.setText(arrayList.get(position).getStraat()+ " " + arrayList.get(position).getHuisnr()+ ", "+arrayList.get(position).getStad());
}
@Override
public int getItemCount() {
return arrayList.size();
}
}
}
, 모든 페이지가 진행 표시 줄을 얻을, 나는 첫 번째 페이지에서 원하는. 그리고 progress_bar를 my card_view의 xml에 넣으면 데이터가로드 될 때까지 진행률 막대가 표시되지 않습니다.
public void instantiateItem(...,int position){
if(position == 0){
/* inflate a view that contains the ProgressBar and process it */
...
}
}
다음
ViewPager
의 어댑터