use of com.scwang.smartrefresh.layout.api.RefreshLayout in project SmartRefreshLayout by scwang90.
the class TwoLevelPracticeFragment method onViewCreated.
@Override
public void onViewCreated(@NonNull final View root, @Nullable Bundle savedInstanceState) {
super.onViewCreated(root, savedInstanceState);
final Toolbar toolbar = (Toolbar) root.findViewById(R.id.toolbar);
final TwoLevelHeader header = (TwoLevelHeader) root.findViewById(R.id.header);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().finish();
}
});
final RefreshLayout refreshLayout = (RefreshLayout) root.findViewById(R.id.refreshLayout);
header.setOnTwoLevelListener(new OnTwoLevelListener() {
@Override
public boolean onTwoLevel(@NonNull RefreshLayout refreshLayout) {
Toast.makeText(getContext(), "触发二楼事件", Toast.LENGTH_SHORT).show();
refreshLayout.getLayout().postDelayed(new Runnable() {
@Override
public void run() {
header.finishTwoLevel();
}
}, 5000);
// true 将会展开二楼状态 false 关闭刷新
return true;
}
});
refreshLayout.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
Toast.makeText(getContext(), "触发刷新事件", Toast.LENGTH_SHORT).show();
refreshLayout.finishRefresh(2000);
}
});
// 状态栏透明和间距处理
StatusBarUtil.immersive(getActivity());
StatusBarUtil.setPaddingSmart(getActivity(), root.findViewById(R.id.toolbar));
}
use of com.scwang.smartrefresh.layout.api.RefreshLayout in project SmartRefreshLayout by scwang90.
the class PureScrollExampleFragmentFooter method onViewCreated.
@Override
public void onViewCreated(@NonNull View root, @Nullable Bundle savedInstanceState) {
super.onViewCreated(root, savedInstanceState);
Toolbar toolbar = (Toolbar) root.findViewById(R.id.toolbar);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().finish();
}
});
toolbar.setTitle("Footer单独使用");
RefreshLayout refreshLayout = (RefreshLayout) root.findViewById(R.id.refreshLayout);
refreshLayout.setEnablePureScrollMode(false);
refreshLayout.setRefreshFooter(new FalsifyFooter(getContext()));
View view = root.findViewById(R.id.recyclerView);
if (view instanceof RecyclerView) {
RecyclerView recyclerView = (RecyclerView) view;
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.addItemDecoration(new DividerItemDecoration(getContext(), VERTICAL));
recyclerView.setAdapter(new BaseRecyclerAdapter<Item>(Arrays.asList(Item.values()), simple_list_item_2, this) {
@Override
protected void onBindViewHolder(SmartViewHolder holder, Item model, int position) {
holder.text(android.R.id.text1, model.name());
holder.text(android.R.id.text2, model.name);
holder.textColorId(android.R.id.text2, R.color.colorTextAssistant);
}
});
}
}
use of com.scwang.smartrefresh.layout.api.RefreshLayout in project SmartRefreshLayout by scwang90.
the class PureScrollExampleFragmentHeader method onViewCreated.
@Override
public void onViewCreated(@NonNull View root, @Nullable Bundle savedInstanceState) {
super.onViewCreated(root, savedInstanceState);
final Toolbar toolbar = (Toolbar) root.findViewById(R.id.toolbar);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().finish();
}
});
RefreshLayout refreshLayout = (RefreshLayout) root.findViewById(R.id.refreshLayout);
// 也可以在 XML 中添加 FalsifyHeader
refreshLayout.setRefreshHeader(new FalsifyHeader(getContext()));
View view = root.findViewById(R.id.recyclerView);
if (view instanceof RecyclerView) {
RecyclerView recyclerView = (RecyclerView) view;
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.addItemDecoration(new DividerItemDecoration(getContext(), VERTICAL));
recyclerView.setAdapter(new BaseRecyclerAdapter<Item>(Arrays.asList(Item.values()), simple_list_item_2, this) {
@Override
protected void onBindViewHolder(SmartViewHolder holder, Item model, int position) {
holder.text(android.R.id.text1, model.name());
holder.text(android.R.id.text2, model.name);
holder.textColorId(android.R.id.text2, R.color.colorTextAssistant);
}
});
}
}
use of com.scwang.smartrefresh.layout.api.RefreshLayout in project SmartRefreshLayout by scwang90.
the class RefreshStylesFragment method onViewCreated.
@Override
public void onViewCreated(@NonNull View root, @Nullable Bundle savedInstanceState) {
super.onViewCreated(root, savedInstanceState);
StatusBarUtil.setPaddingSmart(getContext(), root.findViewById(R.id.toolbar));
View view = root.findViewById(recyclerView);
if (view instanceof RecyclerView) {
RecyclerView recyclerView = (RecyclerView) view;
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.addItemDecoration(new DividerItemDecoration(getContext(), VERTICAL));
recyclerView.setAdapter(new BaseRecyclerAdapter<Item>(Arrays.asList(Item.values()), simple_list_item_2, this) {
@Override
public SmartViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
SmartViewHolder holder = super.onCreateViewHolder(parent, viewType);
if (viewType == 0) {
holder.itemView.setVisibility(View.GONE);
holder.itemView.setLayoutParams(new RecyclerView.LayoutParams(0, 0));
}
return holder;
}
@Override
public int getViewTypeCount() {
return 2;
}
@Override
public int getItemViewType(int position) {
return position == 0 ? 0 : 1;
}
@Override
protected void onBindViewHolder(SmartViewHolder holder, Item model, int position) {
holder.text(android.R.id.text1, model.name());
holder.text(android.R.id.text2, model.nameId);
holder.textColorId(android.R.id.text2, R.color.colorTextAssistant);
}
});
}
RefreshLayout refreshLayout = (RefreshLayout) root.findViewById(R.id.refreshLayout);
if (refreshLayout != null) {
refreshLayout.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(@NonNull final RefreshLayout refreshLayout) {
refreshLayout.finishRefresh(3000);
refreshLayout.getLayout().postDelayed(new Runnable() {
@Override
public void run() {
RefreshHeader refreshHeader = refreshLayout.getRefreshHeader();
if (refreshHeader instanceof RefreshHeaderWrapper) {
refreshLayout.setRefreshHeader(new PhoenixHeader(getContext()));
} else if (refreshHeader instanceof PhoenixHeader) {
refreshLayout.setRefreshHeader(new DropBoxHeader(getContext()));
} else if (refreshHeader instanceof DropBoxHeader) {
refreshLayout.setRefreshHeader(new FunGameHitBlockHeader(getContext()));
} else if (refreshHeader instanceof FunGameHitBlockHeader) {
refreshLayout.setRefreshHeader(new ClassicsHeader(getContext()));
} else {
refreshLayout.setRefreshHeader(new RefreshHeaderWrapper(new BallPulseFooter(getContext())));
}
refreshLayout.setPrimaryColorsId(R.color.colorPrimary, android.R.color.white);
}
}, 4000);
}
});
}
}
use of com.scwang.smartrefresh.layout.api.RefreshLayout in project SmartRefreshLayout by scwang90.
the class SecondFloorPracticeFragment method onViewCreated.
@Override
public void onViewCreated(@NonNull final View root, @Nullable Bundle savedInstanceState) {
super.onViewCreated(root, savedInstanceState);
final View floor = root.findViewById(R.id.secondfloor);
final Toolbar toolbar = (Toolbar) root.findViewById(R.id.toolbar);
final TwoLevelHeader header = (TwoLevelHeader) root.findViewById(R.id.header);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().finish();
}
});
final RefreshLayout refreshLayout = (RefreshLayout) root.findViewById(R.id.refreshLayout);
refreshLayout.setOnMultiPurposeListener(new SimpleMultiPurposeListener() {
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
refreshLayout.finishLoadMore(2000);
}
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
Toast.makeText(getContext(), "触发刷新事件", Toast.LENGTH_SHORT).show();
refreshLayout.finishRefresh(2000);
}
@Override
public void onHeaderMoving(RefreshHeader header, boolean isDragging, float percent, int offset, int headerHeight, int maxDragHeight) {
toolbar.setAlpha(1 - Math.min(percent, 1));
floor.setTranslationY(Math.min(offset - floor.getHeight() + toolbar.getHeight(), refreshLayout.getLayout().getHeight() - floor.getHeight()));
}
});
header.setOnTwoLevelListener(new OnTwoLevelListener() {
@Override
public boolean onTwoLevel(@NonNull RefreshLayout refreshLayout) {
Toast.makeText(getContext(), "触发二楼事件", Toast.LENGTH_SHORT).show();
root.findViewById(R.id.secondfloor_content).animate().alpha(1).setDuration(2000);
refreshLayout.getLayout().postDelayed(new Runnable() {
@Override
public void run() {
header.finishTwoLevel();
root.findViewById(R.id.secondfloor_content).animate().alpha(0).setDuration(1000);
}
}, 5000);
// true 将会展开二楼状态 false 关闭刷新
return true;
}
});
// refreshLayout.setOnRefreshListener(new OnRefreshListener() {
// @Override
// public void onRefresh(@NonNull RefreshLayout refreshLayout) {
// Toast.makeText(getContext(),"触发刷新事件",Toast.LENGTH_SHORT).show();
// refreshLayout.finishRefresh(2000);
// }
// });
// 状态栏透明和间距处理
StatusBarUtil.immersive(getActivity());
StatusBarUtil.setMargin(getActivity(), root.findViewById(R.id.classics));
StatusBarUtil.setPaddingSmart(getActivity(), root.findViewById(R.id.toolbar));
StatusBarUtil.setPaddingSmart(getActivity(), root.findViewById(R.id.contentPanel));
}
Aggregations