Shelfmagnetic 0.1.0

Shelfmagnetic 0.1.0

shelfmagnetic维护。



  • 作者
  • Jenson

shelfmagnetic

Shelfmagnetic架构是多年开发经验的结合

背景

在开发过程中,您会遇到一个显示各种不同风格内容或动态显示某个部分的页面。如果将它们放入VC中,那么VC将会非常臃肿且不便管理。然后这个框架就出现了,用来解决这个问题。该框架包括多页面集成匹配、网络请求、数据追踪点、异步UI渲染等。易于使用,只需使用VC继承。

使用CocoaPods安装

要使用CocoaPods将Shelfmagnetic集成到您的Xcode项目中,请在Podfile中指定它:pod 'Shelfmagnetic', '~> 0.1.0'

架构

  • 模型
    • MagneticContext
  • 视图
    • MagneticTableView
    • MagneticErrorCell
    • JEBaseLoadingView
    • MagneticTableFooterView
    • JEBaseEmptyView
  • 控制器
    • MagneticController
    • MagneticsController
    • MagneticsControllerProtocol

图片

image

用法

  • 注册控制器

    • MagneticContext.h
    typedef NS_ENUM(NSInteger, MagneticType) {
    MagneticTypeDemo = 1000,
    };
    
    • MagneticContext.m
    - (NSString *)parseClassName:(MagneticType)type
    {
        NSString *className = nil;
        switch (type) {
            case MagneticTypeNormal:
                className = @"MagneticTypeDemo";
                break;
            default:
                break;
        }
        return className;
    }
    
  • ViewController继承自MagneticController并实现了一些功能。可以包含多个MagneticDemoController。

    • ViewController
    @interface ViewController : MagneticsController
    
    NSMutableArray *dataArr = [NSMutableArray array];
    MagneticContext *context = [[MagneticContext alloc]init];
    context.type = MagneticTypeDemo;
    [dataArr addObject:context];
    
    /**
     dataArr add more VC
     */
    [self requestMagneticsDidSucceedWithMagneticsArray:dataArr];
    
  • MagneticDemoController继承自MagneticController并实现了一些功能。

    • MagneticDemoController
    - (void)didFinishInitConfigurationInCardsController:(CardsController *)cardsController {
        // After completing initial monitoring, data processing, and successful interface request
    }
    
    - (NSString *)magneticRequestURLInMagneticsController:(MagneticsController *)magneticsController{
        //Request url, asynchronous request must be implemented
        return @"https://github.com/jenson21/shelfmagnetic";
    }
    
    - (NSDictionary *)magneticRequestParametersInMagneticsController:(MagneticsController *)magneticsController{
        //Requested parameters
        return nil;
    }
    

联系

许可协议

Shelfmagnetic遵循MIT许可协议发布。详细信息请参阅LICENSE