Awesome Open Source
Awesome Open Source


Add pretty and smooth waves to your views!

The wave can be added to any type of view.





pod 'WXWaveView'

Or Carthage:

github "WelkinXie/WXWaveView"

How to use

  1. Initialize WXWaveView with method " addToView:withFrame: "

     self.waveView = [WXWaveView addToView:headerView withFrame:CGRectMake(0, CGRectGetHeight(headerView.frame) - 10, CGRectGetWidth(headerView.frame), 10)];

    Of course, you can just give CGRectZero to the method above and use Auto Layout to define its frame.

  2. Perform the method wave when you want it to animate.

     [self.waveView wave];

That's it!


  1. The time when the wave lasts. When it is set to zero, the wave will never stop. Default is 1.5.

     self.waveView.waveTime = 0.f;  
  2. The color of the wave. Default is white.

     self.waveView.waveColor = [UIColor groupTableViewBackgroundColor];
  3. The speed of the wave. Default is 9.

     self.waveView.waveSpeed = 20.f;
  4. The angular speed of the wave. Default is 2.

     self.waveView.angularSpeed = 1.8f;
  5. You can also stop the wave manually with the method stop whenever you want.

     [self.waveView stop];

Recently I find it amusing to make it a loading view :

What will it be depends on your creativity! Have fun :]


WXWaveView is inspired by KYWaterWaveView. Thanks KittenYang and his contributions.


WXWaveView is released under MIT License.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
objective-c (10,818
animation (1,044
wave (23

Find Open Source By Browsing 7,000 Topics Across 59 Categories