• [原] corePlot 类库与iOS自带类库使用方法对比(很多开源代码都有这个特点)


    ——人类最倚重的是自己的“以往经验”。——

    我们直接看一下在corePlot 类库和iOS自带类中为一个控件设置文本显示格式的实现。

          * corePlot 类库中,为一个对象设置标题显示格式

    //创建一个“图表坐标系”  (估且称它为一个控件吧)
    CPTXYGraph *graph3gL = [[ CPTXYGraph alloc ] initWithFrame:CGRectMake(0, 0, 320, 240)]; //自定义“图表标题”的格式 CPTMutableTextStyle*textStyleTitle=[CPTMutableTextStyle textStyle]; textStyleTitle.color=[CPTColor blackColor]; textStyleTitle.fontSize=15; graph3gL.title = @"测试用图表"; graph3gL.titleTextStyle = textStyleTitle; //设置 CPGraph 标题 的格式

             *ios 自带类库 为一个对象设置标题显示格式

    UIButton *button = [[UIButton alloc]init];
    button.titleLabel.text = @"测试用按钮";
    button.titleLabel.textColor = [UIColor redColor];
    button.titleLabel.font = [UIFont systemFontOfSize:14.0f]; 

        我们看到,在corePlot类库中,设置控件标题格式的代码并没有写成如下形式:

    graph3gL.titleTextStyle.font = 14.0f;      (两个 .  访问符)

    而是写成了如下形式:

    graph3gL.titleTextStyle = textStyleTitle;    (一个 . 访问符)

    我们corePlot 的这种模式,称为“浅一层次的封装”,这种模式要求我们,给一个对象赋予一个属性时,你很可能需要创建一个相应的“属性对象”(如上例所示,你需要创建一个 textStyleTitle 对象)

    corePlot 类库使用的这种模式,在很多开源项目中都有使用,了解这个特点后,我们在阅读开源项目时,可能会更佳轻松。

  • 相关阅读:
    代码重构技术方法
    《算法导论》为什么经典
    BeagleBone Black教训四局:简单LED对照实验
    linux(Ubuntu)安装QQ2013
    ubuntu卸载qq2012
    android弧形进度条,有详细注释的,比较简单
    Android自定义进度条
    AndroidのUI设计研究(一)——自定义ProgressBar
    介绍几个工作开发中封装的好用的android自定义控件
    android自定义viewgroup之我也玩瀑布流
  • 原文地址:https://www.cnblogs.com/ygm900/p/3184180.html
Copyright © 2020-2023  润新知