pull down to refresh

What are its principles, methods, constraints, and best practices?
I hope the diagram below gives you a quick overview.