MEVFloatingButton
  • October 7, 2023

An iOS drop-in UITableView, UICollectionView, UIScrollView superclass category for showing a customizable floating button on top of it.

Features


  • Multiple animation types.
  • Different display modes.
  • Different screen positions.
  • Customizable button icon.
  • Multiple delegate methods.

Demo


Demo App

Usage


To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Requires iOS SDK version > 8.0

Installation


CocoaPods

MEVFloatingButton is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod ‘MEVFloatingButton’

Manual

Simply include UIScrollView+FloatingButton.h and UIScrollView+FloatingButton.m from /Pod/Classes/ folder in your App’s Xcode project.

How to use

 Step 1

#import “UIScrollView+FloatingButton.h”

Step 2

Add datasource and delegate methods.

@interface ViewController () <MEVFloatingButtonDelegate>

#pragma mark – MEScrollToTopDelegate Methods

– (void)floatingButton:(UIScrollView *)scrollView didTapButton:(UIButton *)button;
– (void)floatingButtonWillAppear:(UIScrollView *)scrollView;
– (void)floatingButtonDidAppear:(UIScrollView *)scrollView;
– (void)floatingButtonWillDisappear:(UIScrollView *)scrollView;
– (void)floatingButtonDidDisappear:(UIScrollView *)scrollView;

Step 3

Create a MEVFloatingButtonobject.

MEVFloatingButton *button = [[MEVFloatingButton alloc] init];
button.animationType = MEVFloatingButtonAnimationFromBottom;
button.displayMode = MEVFloatingButtonDisplayModeWhenScrolling;
button.position = MEVFloatingButtonPositionBottomCenter;
button.image = [UIImage imageNamed:@”Icon0″];
button.imageColor = [UIColor groupTableViewBackgroundColor];
button.backgroundColor = [UIColor darkGrayColor];
button.outlineColor = [UIColor darkGrayColor];
button.outlineWidth = 0.0f;
button.imagePadding = 20.0f;
button.horizontalOffset = 20.0f;
button.verticalOffset = -30.0f;
button.rounded = YES;
button.hideWhenScrollToTop = YES;

Set the object to your UIScrollView/UITableView/UICollectionView.

[self.tableView setFloatingButtonView:button];

Set the delegate.

[self.tableView setFloatingButtonDelegate:self]

Sample Project


For more info check the Examples project. Everything is there.

GitHub


View Github

#cocoapods #ios #iosanimation #objectivec #objectivecextensions #objectiveclibrary
YOU MIGHT ALSO LIKE...
SwiftUI Charts

Build custom charts with SwiftUI Styles      

SwiftUICharts

A simple line and bar charting library that support accessibility written using SwiftUI.

Swipeable cards

Swipeable Cards with SwiftUI

RGStack

This UI attempts to capture the Quibi Card Stack and the associated User Interaction.

🃏 CardStack

A easy-to-use SwiftUI view for Tinder like cards on iOS, macOS & watchOS.