All Projects → NSSimpleApps → DropDownTableView

NSSimpleApps / DropDownTableView

Licence: MIT license
Here is a drop-down TableView.

Programming Languages

objective c
16641 projects - #2 most used programming language
swift
15916 projects
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to DropDownTableView

Rglistkit
RGListKit is a Protocol & MVVM based framework to easily populate a UITableView or UICollectionView via single api.
Stars: ✭ 178 (+1012.5%)
Mutual labels:  uitableview
Squaremosaiclayout
An extandable mosaic UICollectionViewLayout with a focus on extremely flexible customizations 🔶
Stars: ✭ 243 (+1418.75%)
Mutual labels:  uitableview
TreeView
"TreeView - sub-cells simplified" (c). Enable subcells in UITableView with a single drop-in extension. CocoaPod:
Stars: ✭ 54 (+237.5%)
Mutual labels:  uitableview
Swiftycomments
UITableView based component designed to display a hierarchy of expandable/foldable comments.
Stars: ✭ 200 (+1150%)
Mutual labels:  uitableview
Magearrefreshcontrol
An iOS refresh control with gear animation
Stars: ✭ 231 (+1343.75%)
Mutual labels:  uitableview
IQListKit
Model driven UITableView/UICollectionView
Stars: ✭ 51 (+218.75%)
Mutual labels:  uitableview
Vbpiledview
Simple and beautiful stacked UIView to use as a replacement for an UITableView, UIImageView or as a menu
Stars: ✭ 164 (+925%)
Mutual labels:  uitableview
PagedLists
Paginated UITableView and UICollectionViews for iOS.
Stars: ✭ 69 (+331.25%)
Mutual labels:  uitableview
Tabanimated
A skeleton screen framework based on native for iOS. (一个由iOS原生组件映射出骨架屏的框架,包含快速植入,低耦合,兼容复杂视图等特点,提供国内主流骨架屏动画的加载方案,同时支持上拉加载更多、自定制动画。)
Stars: ✭ 2,909 (+18081.25%)
Mutual labels:  uitableview
AUPickerCell
Embedded picker view for table cells.
Stars: ✭ 19 (+18.75%)
Mutual labels:  uitableview
Flowkit
A declarative type-safe framework for building fast and flexible list with Tables & Collection
Stars: ✭ 215 (+1243.75%)
Mutual labels:  uitableview
Automatic Height Tagcells
This is a sample project to implement features with dynamic height of UITableViewCell based on autolayout, tags aligned automatically and clickable tags.
Stars: ✭ 229 (+1331.25%)
Mutual labels:  uitableview
DraggableModalTransition
Enables dragging interaction and animation of scrollView in a similar way to Facebook Messenger app.
Stars: ✭ 63 (+293.75%)
Mutual labels:  uitableview
Expandable Table View
Expandable UITableView in iOS
Stars: ✭ 180 (+1025%)
Mutual labels:  uitableview
HDEmptyView
一个Swift语言封装的EmptyView显示库,可作用于WKWebView、UITableView、UICollectionView 无网络提醒或者空数据提醒
Stars: ✭ 29 (+81.25%)
Mutual labels:  uitableview
Hgplaceholders
Nice library to show placeholders and Empty States for any UITableView/UICollectionView in your project
Stars: ✭ 2,048 (+12700%)
Mutual labels:  uitableview
react-native-js-tableview
A JavaScript implementation for TableView that looks great on both iOS and Android.
Stars: ✭ 23 (+43.75%)
Mutual labels:  uitableview
ContextMenuSwift
A better version of iOS 13 Context Menu
Stars: ✭ 162 (+912.5%)
Mutual labels:  dropdown-menus
RevivalxUITableView
This source code provides example for UITableView using Alamofire and Haneke.
Stars: ✭ 13 (-18.75%)
Mutual labels:  uitableview
Cyanic
Declarative, state-driven UI framework
Stars: ✭ 32 (+100%)
Mutual labels:  uitableview

DropDownTableView

Supporting Swift 2.* has been removed.

>= 0.7 for Swift 3.

Place into Podfile:

pod 'DropDownTableView/Swift' # for swift project pod 'DropDownTableView/ObjC' # for objc project

Place this preamble import DropDownTableView into source file.

Inherit from DropDownTableViewController and override methods from DropDownTableViewDataSource and DropDownTableViewDelegate.

Usage:

class TableViewController: DropDownTableViewController {
    override func numberOfRows(in tableView: UITableView) -> Int {
        return someValue
    }
    override func tableView(_ tableView: UITableView, numberOfSubrowsInRow row: Int) -> Int {
        return someValue
    }
    override var showSubrowsInRow: Int? {
        return someValue
    }
    override func tableView(_ tableView: UITableView, cellForRow row: Int, indexPath: IndexPath) -> UITableViewCell {
        if row == self.nsk_selectedRow {
            someCell.accessoryView = UIImageView(image: UIImage(named: "up_arrow"))
        } else {
            someCell.accessoryView = UIImageView(image: UIImage(named: "down_arrow"))
        }
        return someCell
    }
    override func tableView(_ tableView: UITableView, cellForSubrow subrow: Int, inRow row: Int, indexPath: IndexPath) -> UITableViewCell {
        return someCell
    }
    override func tableView(_ tableView: UITableView, didSelectRow row: Int) {
        switch (self.nsk_selectedRow, row) {
            case (let sr?, _) where row == sr:
                tableView.cellForRow(at: row)?.accessoryView =  UIImageView(image: UIImage(named: "down_arrow"))
                tableView.deselect(row: row, animated: true)
            break
            case (let sr?, _) where row != sr:
                tableView.cellForRow(at: row)?.accessoryView = UIImageView(image: UIImage(named: "up_arrow"))
                tableView.cellForRow(at: sr)?.accessoryView = UIImageView(image: UIImage(named: "down_arrow"))
            break
            case (nil, _):
                tableView.cellForRow(at: row)?.accessoryView = UIImageView(image: UIImage(named: "up_arrow"))
            break
            default:
            break
        }
        super.tableView(tableView, didSelectRow: row)
    }
}

Alt text

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].