跟踪AppInfo代码

model 中的属性方法都是要共享的,所以写在.h文件中。

数据操作在model中完成.

 

程序运行开始的时候,先执行ViewController,它会对自已的进行成员初始化工作!在准备工作结束以后,便开始对其所管理的view进行加载操作,便到了viewDidLoad方法中去

当执行到这儿由于它对自身的成员NSArray *appList 进行了setter重写,所以就调用了该重写后的setter方法.

         在该setter方法- (NSArray *)appList中,判断了如果_appList为空,就调用[AppInfoModel appInfoList]进行赋值。以便获得该AppInfoModel的模型数组。

         这就跑到了类AppInfoModel中的去了。(Model)

        

                       appInfoList的作用就是返回一个可变的数组,改数组的内容为自身的模型,这个模型包括name 和 icon两个属性。

                       

                        当程序执行到这一步以后,Controller 已经从知本地的plist中提取出了数据,并且保存在一个名称为AppInfoModel的数组中了。

 

                        接着回到Controller的viewDidLoad方法中,

                        程序执行了AppInfoView *appView = [AppInfoView appInfoViewWithAppInfo:self.appList[i]];   (view层)

                        这一句传入了一个参数self.appList[i], 这个参数就是model, 它保存在appList数组中,由下标决定了这是一个在plist中存在的一个模型。 而该方法appInfoViewWithAppInfo: 很简单,功能是创建一个view,这个view中不仅包含了这个view中的子控件(一个label, 一个image, 一个button),还包含传入的model中的appInfo信息,并且保存在这个view的成员属性iconImage和nameLabel中去了。

                        执行到这一步,就已径加载完本地存放在plist文件中的数据和view,接下来就是把9个app view 排列了,并且添加到该控制器所管理的那个view

           

            接下来就是当用户点击下载按钮的时候,主屏幕会显示一个label提示正在下载,几秒后消失,这个就是B(Controller 所管理的view)想要监听A(appView),当A被点击后,B要添加那个label显示几秒中再消失。

所以用到代理模式,B为A的代理,当A被点击了,通知B自已被点击了,需要干些什么事。

controller

appInfoView

Controller中。

            好了,这个程序的大致流程就是这样。

转载于:https://www.cnblogs.com/jinhuiyao/p/4595423.html

跟踪AppInfo代码相关推荐

  1. php执行跟踪_PHP使用debug_backtrace方法跟踪调试代码调用详解

    本文实例讲述了PHP使用debug_backtrace方法跟踪调试代码调用.分享给大家供大家参考,具体如下: 在开发过程中,例如要修改别人开发的代码或调试出问题的代码,需要对代码流程一步步去跟踪,找到 ...

  2. 怎么跟踪php代码,第九节 PHP 跟踪调试代码 XDebug

    >[success] # PHP 跟踪调试代码 XDebug - [下载XDebug扩展](https://xdebug.org/download.php) - 下载对应PHP版本的Xdebug ...

  3. php如何跟踪调试,PHP使用debug_backtrace方法跟踪调试代码调用详解

    本文实例讲述了PHP使用debug_backtrace方法跟踪调试代码调用.分享给大家供大家参考,具体如下: 在开发过程中,例如要修改别人开发的代码或调试出问题的代码,需要对代码流程一步步去跟踪,找到 ...

  4. java 鼠标动眼睛动_java实现眼睛跟着鼠标转动的跟踪眼代码

    import java.html" target="_blank">java.applet.Applet; import java.awt.Color; impor ...

  5. java鼠标经过代码_一段眼睛跟着鼠标转动的跟踪眼代码

    import java.applet.Applet; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; i ...

  6. 瞧一瞧看一看啦“一段眼睛跟着鼠标转动的跟踪眼代码”

    import java.applet.Applet; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; i ...

  7. Android调用JNI本地方法跟踪目标代码

    正如Android调用JNI本地方法经过有点改变章所说跟踪代码是可行的,但是跟踪某些代码会出现anr,点击取消,还是不好运,有提高办法吗?回答是有(gdb还没试过,本文只讨论ida). 下面是我使用  ...

  8. 点击网页跟踪php代码的工具,使用ltrace工具跟踪PHP库函数调用的方法

    本文实例讲述了使用ltrace工具跟踪PHP库函数调用的方法.分享给大家供大家参考,具体如下: 可能大家已经很熟悉使用strace来跟踪系统调用,今天介绍一个跟踪库函数的利器ltrace 比如我有这么 ...

  9. php执行跟踪_PHP 代码调试跟踪工具 Ytrace

    Ytrace是一个PHP代码调试跟踪工具,通过将PHP代码执行过程记录到文件中,再通过webui界面展示出来,并且支持单步调试的方式去查看执行过程. 主要特性: 可以可视化的看到源码文件哪些行被执行了 ...

  10. SVM+HOG识别Matlab代码,序列前向搜索Malab代码,抗遮挡的STC跟踪C++代码

    1.毕业论文的代码.一个能识别能跟踪的程序.识别部分为SVM+HOG还有序列前向搜索,为Matlab写的. 2.跟踪部分为提升的STC跟踪算法,原版STC代码见http://blog.csdn.net ...

最新文章

  1. Codeforces Round #649 (Div.2)题解
  2. 支持鸿蒙的手机型号多少钱,华为鸿蒙系统支持手机型号一览
  3. 2018 German Collegiate Programming Contest (GCPC 18)
  4. #279. [SYZOI Round1] 滑稽♂树(树状数组套主席树)
  5. php strpos无效,簡單的PHP strpos功能不起作用,為什么?
  6. js赋值与逻辑运算的疑问
  7. leelen可视对讲怎么接线_对讲门铃怎么安装
  8. JAVA蓝桥杯:字母图形
  9. 【带着canvas去流浪(5)】绘制K线图
  10. element UI表格使用cell-style改变单元格样式
  11. 小D课堂 - 新版本微服务springcloud+Docker教程_6-05 高级篇幅之高并发情况下
  12. HANA学习笔记1-搭建HANA学习环境
  13. 计算机绘图CAD实训指导,【精品】CAD计算机绘图实习指导书
  14. 小猫爪:AWR294x学习笔记02-AWR294x之DPMIPC
  15. 最新CAD机械二维三维图块集
  16. servercat IOS Linux监控 SSH客户端
  17. 网络安全——数据库基础知识
  18. Newman基础使用
  19. matlab 多边形 自相交,怎么判断多边形是否自相交的算法
  20. kt条件例题运筹学_管理科学与工程 846运筹学 2015真题回忆+经验分享

热门文章

  1. 第三篇:DAMA数据管理知识体系
  2. python解析JSON数据
  3. java学生签到系统代码_java学生考勤签到代码【相关词_ 学生考勤系统java代码】...
  4. 函数 free 的原型
  5. GBASE数据库安装手册中的一点命令
  6. java 自动化测试_java写一个自动化测试
  7. 计算机没有本地网络,网络连接里没有本地连接
  8. spring菜鸟总结
  9. visio图形包解压
  10. oracle mysql认证考试流程_oraclemysql认证的考试流程有哪些