BMUICore framework for iOS

BMUICore framework for iOS

Released 4 years ago , Last update 4 years ago

Extra core UI functionality for iOS applications such as base classes for different views/view controllers, image manipulation helper methods, asynchronous model loading and more.

Build complex iOS interfaces with a mature UI framework

Building user friendly iOS applications takes a lot of behind-the-scenes engineering. This framework provides structure and utilities for building robust user interfaces for iOS devices. Compatible with iOS versions from 5.0 to 7.x.

Basic functionality for UIViewControllers

  • Keep track of view state (invisible, about to be visible, visible, about to be invisible)
  • Proper memory management which is backwards compatible over different iOS versions (symmetric viewDidLoad - viewDidUnload)
  • In-app localization changes support
  • Stylesheet support

Extensions for UITableViewController

  • Drag to refresh and drag to load more support.
  • Automatic adjustment of content insets corresponding to navigation bar tranlucency
  • Automatic resize and scrolling corresponding to keyboard appearance/disappearance.
  • Automatic showing of a different view when no results are present or when an error occurs (instead of nasty alert views)
  • Asynchronous model loading support.

Different kinds of views

  • UITableViewCell base classes
  • Loading indicator view
  • Asynchronous loading image view/button
  • Animated image view with cross-fade transitions
  • Draggable button for a sliding interaction (like slide to unlock)
  • Custom bar button item with support for both an image and a title

Extensions for existing view classes

  • Category methods for a lot of existing UIView sub classes

Image manipulation

  • Thread-safe rotation/scaling using different aspect modes (scale, aspect scale, etc)
  • Cropping of images, e.g. for rounded corners

AppDelegate base class

  • Integrates with the BMCore module (BMApplicationContext and BMService framework)
  • Support for automatically showing a loading overlay when services are active with support for send to background and cancellation.
  • Support for receiving a shake gesture independent from UIViewControllers

Part of the BMCommons Framework for iOS

This extends and requires the BMCore framework for iOS, is used by the BMMedia framework for iOS and is part of the BMCommons framework. The BMCore Framework has been developed and used in production apps during the last five years including the BehindTheFrontDoor iPhone app.

The author, Werner Altewischer, has over 15 years experience as software developer and a track record of many successful apps since the launch of the app store in 2008 including the Greetz iPhone app, which won the award of best mobile web store of 2012 in The Netherlands.

Package Contents

Here is a full list of all classes with a short description of their purpose.


14 day 14-day money-back guarantee


Application License

  • Perpetual license

  • 1 application

  • Can distribute binary products only

  • Commercial use

  • 6 months support


Distributor License

  • Perpetual license

  • Unlimited projects

  • Can distribute code and binary products

  • Commercial use

  • 6 months support


The full documentation is installable as an XCode docset (as part of the free download, click 'View Demo') and available in HTML here.

Here is an overview of all classes in BMUICore module.

For a description of the BMService framework see this link.

Please ask if things are unclear or need to be clarified with examples.

Setup / installation

To install:

  • Unzip the downloaded zip-file which contains the BMCommons frameworks, documentation and example code
  • Copy the docset included in the Documentation directory to your XCode docset directory as specified in the file included in the download.
  • Add the BMCore.framework and BMUICore.framework from the Frameworks directory to your project's target.
  • A license key is required for productional use on an iOS device. Register the license key in your AppDelegate's init method as follows:

    [[BMCore instance] registerLicenseKey:@"TheLicenseKey"]; [[BMUICore instance] registerLicenseKey:@"TheLicenseKey"];

The BMUICore module relies on the BMCore module and the required frameworks listed there. Additionally it relies on the following dynamic frameworks/libraries which should be linked in an executable containing this module:

  • CoreMedia.framework
  • AVFoundation.framework
  • QuartzCore.framework

Example usage

For example code view the Examples in the free download which is fully functional in the simulator and contains examples for the different modules part of the BMCommons framework.


Three licenses are offered for this module:

  • Application License: valid for a single application (includes the library in binary format only)
  • Developer License: valid for either 5 applications with generic bundle identifiers or for all applications within your company, with application bundle identifiers matching to com.yourcompany. (includes the library in binary format only)
  • Distributor License: valid for unlimited applications, and includes the library source code. Gives you right to distribute the source code or binary as part of a bigger project, but prohibits reselling the library itself.

NOTE: Only the distributor package contains the source code for this module. Other packages include the binary library only.

The demo download includes all modules of the BMCommons framework including example code with unlimited functionality in the iOS simulator. Running on an actual device requires a valid license key to be registered as follows:

[[BMUICore instance] registerLicenseKey:@"TheLicenseKey"];

License keys may be managed via You may also request a trial there.

3 licenses, starting from From » $49.99 View Licenses

Get A Quote

What do you need?
  • Custom development
  • Integration
  • Customization / Reskinning
  • Consultation
When do you need it?
  • Soon
  • Next week
  • Next month
  • Anytime

Thanks for getting in touch!

Your quote details have been received and we'll get back to you soon.

Or enter your name and Email
No comments have been posted yet.