Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. DZNEmptyDataSet

DZNEmptyDataSet

MITObjective-C

A drop-in UITableView/UICollectionView category for displaying customizable empty state views when content is unavailable.

Visit WebsiteGitHubGitHub
12.0k stars1.7k forks0 contributors

What is DZNEmptyDataSet?

DZNEmptyDataSet is an open-source iOS library that provides a drop-in category for UITableView and UICollectionView to display customizable empty state views when there is no content to show. It solves the problem of blank screens in list views by offering informative placeholders, improving user experience and guiding interactions.

Target Audience

iOS developers building apps with table views or collection views who need to handle empty data states professionally, particularly those focused on UX polish and brand consistency.

Value Proposition

Developers choose DZNEmptyDataSet for its seamless integration without requiring subclassing, extensive customization options via protocols, and broad compatibility across iOS versions and Apple platforms, making it a reliable, production-ready solution.

Overview

A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display

Use Cases

Best For

  • Displaying onboarding messages in empty list views
  • Showing error or no-results states in search interfaces
  • Adding branded empty screens for new user accounts
  • Implementing call-to-action buttons in empty table views
  • Replacing default loading indicators with custom empty views
  • Handling empty states in UICollectionView layouts

Not Ideal For

  • Apps built entirely with SwiftUI, as the library is UIKit-specific and lacks native SwiftUI support.
  • Projects requiring dynamic empty states that update in real-time without reloading the table view, as it relies on manual refresh calls.
  • Teams that avoid category-based libraries due to potential method swizzling conflicts or preference for subclassing approaches.
  • Developers seeking built-in, pre-styled empty state templates, since customization requires manual NSAttributedString setup.

Pros & Cons

Pros

Drop-in Integration

Works as a category on UIScrollView, allowing easy addition to existing UITableView or UICollectionView without subclassing, as highlighted in the README's 'Drop-in Integration' feature.

Extensive Customization

Supports images, titles, descriptions, buttons, and custom views with NSAttributedString for detailed appearance control, enabling branded empty states as shown in the sample projects.

Auto-Layout Centering

Automatically centers content with rotation support and allows custom vertical/horizontal offsets, ensuring consistent layouts across devices, per the 'Auto-Layout & Alignment' feature.

Broad Compatibility

Compatible with iOS 6+, tvOS 9+, and works with UITableView, UICollectionView, UISearchDisplayController, and Storyboards, covering a wide range of Apple platforms.

Cons

Objective-C Legacy

Primarily designed for Objective-C, leading to clunky integration in modern Swift projects with @objc annotations and potential bridging issues, despite some Swift support.

Protocol Boilerplate

Requires implementing separate DZNEmptyDataSetSource and DZNEmptyDataSetDelegate protocols, adding code overhead compared to more streamlined, declarative approaches.

Limited Dynamic Updates

Empty states don't automatically update with data changes; developers must manually call reloadData or reloadEmptyDataSet, which can be inefficient for real-time apps.

Frequently Asked Questions

Quick Stats

Stars12,026
Forks1,717
Contributors0
Open Issues166
Last commit3 years ago
CreatedSince 2014

Tags

#ios#collectionview#objective-c#ui-components#cocoapods#empty-state#tableview#carthage#user-experience#uikit

Built With

U
UIKit
O
Objective-C

Links & Resources

Website

Included in

iOS51.7k
Auto-fetched 22 hours ago

Related Projects

HGPlaceholdersHGPlaceholders

Nice library to show placeholders and Empty States for any UITableView/UICollectionView in your project

Stars2,210
Forks157
Last commit4 years ago
ListPlaceholderListPlaceholder

ListPlaceholder is a swift library allows you to easily add facebook style animated loading placeholder to your tableviews or collection views.

Stars633
Forks70
Last commit1 year ago
WLEmptyStateWLEmptyState

WLEmptyState is an iOS based component that lets you customize the view when the dataset of a UITableView or a UICollectionView is empty. We created a sample project with the WLEmptyState component to show how you can use it.

Stars318
Forks26
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub