最近收集了一下我在开发app遇到的问题和用到的东西

   最近在仿写一款app 也是第一次写这种企业级的app,所以想从开始 遇到的一些问题和用到的一些东西,以供那些像我这样的小白学习一下(不喜勿喷啊,奴家只是一个小白而已,或许遇到的问题有可能是初级的问题,所以不喜勿喷, 

1.在刚开始的时候先把用到的第三库想列出来,加以说明,期间比较陌生的第三方库也是靠百度的

   1)AFNetworking  这个开发全部都知道吧 一个很好用的 网络请求的第三方库

  2)  CDDpagerController   父子控制器切换界面的功能

  3)   FMDB   封装的数据库 

        在 FMDB 中有三个重要的类:

       FMDatabase:是一个提供 SQLite 数据库的类,用于执行 SQL 语句。

      FMResultSet:用在 FMDatabase 中执行查询的结果的类。

      FMDatabaseQueue:在多线程下查询和更新数据库用到的类。

4)IQKeyboardManager  OS中专门管理UITextField/UITextView控件被遮挡的第三方库工具,并且简单易用 

github连接https://github.com/hackiftekhar/IQKeyboardManager 

5)  Masonry 非常简洁优美的一款Autolayout框架

6) MJExtension 是一套“字典和模型之间互相转换”的轻量级框架

7) MJRefresh 功能强大的iOS下拉刷新(也支持上拉加载更多)控件

8) SDCycleScrollView 简单好用的 无限循环工具。 超简单使用 部分自定义 获取网络图片 图片对应的标题 代理

9) SDWebImage 可谓是占据大半壁江山。它支持从网络中下载且缓存图片,并设置图片到对应的UIImageView控件或者UIButton控件

10) SVProgressHUD 是一个第三方的控件,是一个弹出提示层

11)  TZImagePickerController 一个访问照片 相册的 第三库

12)ZYCornerRadius直接对图片处理圆角,而不是View使用还是很简单的

2.第三库目前就用到了这么多,下面说一下我从第一步写 到最后 遇到的一些问题和一些陌生的代码

   1)new  跟 alloc 的 区别

    在项目中 总有写 new  有的时候 写alloc  那他们的区别是什么呢 

    new和alloc/init在功能上几乎是一致的,分配内存并完成初始化。差别在于,采用new的   方式只能采用默认的init方法完成初始化,采用alloc的方式可以用其他定制的初始化方法。  

 2)pch 文件 .h文件不显示问题,在prefix header 导入路径就好


3)#import 跟@class 和include的区别 

import会包含引用类的所有信息(内容),包括引用类的变量和方法

@class仅仅是告诉编译器有这么一个类, 具体这个类里有什么信息, 完全不知

效率上的区别

 include  在C语言中,我们使用#include来引入头文件。使用#include “xx.h”来引入自定义的头文件,使用#include来引入库中的头文件。

4)UICollectionReusableView 不知道 你们用没用过,过着知道他的写法不 直接看代码 就懂了

// 注册头部 [self.collectionView registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:HeaderID];

    // 如果有class来注册这个头部或尾部视图时一定要用代码的方式去设置下这个头部或尾部的尺寸    // 加载的时候会根据字符串来判断是头还是尾    self.flowLayout.headerReferenceSize = CGSizeMake(50, 50);

    // 注册尾部    [self.collectionView registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:FooterID];

    self.flowLayout.footerReferenceSize = CGSizeMake(50, 50);

 5)UIKIT_EXTERN

UIKIT_EXTERN简单来说,就是将函数修饰为兼容以往C编译方式的、具有extern属性(文件外可见性)、public修饰的方法或变量库外仍可见的属性

6)automaticallyAdjustsScrollViewInsets

从当前界面跳转到下一个界面的时候,导航栏多出来一个或者tabbar隐藏不了等问题的,大部分情况都是automaticallyAdjustsScrollViewInsets状态是YES造成的,那么这时候果断在viewDidLoad这个方法里面加一句:self.automaticallyAdjustsScrollViewInsets = NO; 不让它自动留出空白,由开发者自己去控制留白及坐标问题。

  7) appearance

在iOS属性后有UI_APPEARANCE_SELECTOR标志都可以一次性统一设置.这种情况还有很多.比如说统一设置UITabbarItem的文字颜色

就是你有一个全局的UI nav 都是 一样的 可以这样设置


8)NSFontAttributeName  NSForgroundColorAttrbuteName

 ① 设置字体属性,默认值 字体   字号

② 设置字体颜色 取值 UIcolor  默认黑色

具体可以看这篇文章 http://blog.csdn.net/lwjok2007/article/details/47184911

9)tabbar 点击动画 (不好意思 不知道怎么制作gif  图片 就直接粘贴 代码吧 希望能看懂)

#pragma mark - 点击动画

- (void)tabBarButtonClick:(UIControl *)tabBarButton

{

    for (UIView *imageView in tabBarButton.subviews) {

        if ([imageView isKindOfClass:NSClassFromString(@"UITabBarSwappableImageView")]) {

            //需要实现的帧动画,这里根据自己需求改动

            CAKeyframeAnimation *animation = [CAKeyframeAnimation animation];

            animation.keyPath = @"transform.scale";

            animation.values = @[@1.0,@1.1,@0.9,@1.0];

            animation.duration = 0.3;

            animation.calculationMode = kCAAnimationCubic;

            //添加动画

            [imageView.layer addAnimation:animation forKey:nil];

        }

    }

}



嗯 今天先这样吧 以后 会隔几天都会去更新  自己在仿写过程中 遇到的问题及新学洗的知识

在这里非常感谢 源码作者 对我的肯定 回头把 作者的 链接 附上 

如果大家有什么不懂得 都可以跟我留言,如果感觉对你们有帮助 那就动动你们的小鼠标 赞一下 谢谢 

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 196,302评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,563评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,433评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,628评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,467评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,354评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,777评论 3 387
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,419评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,725评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,768评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,543评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,387评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,794评论 3 300
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,032评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,305评论 1 252
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,741评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,946评论 2 336

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,143评论 25 707
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 2,465评论 1 14
  • 摘不到星月 我献不出夜明珠 我爱上的也不是公主 只会吃苹果 我不是坐在树下的牛顿会顿悟 我也不会创造什么iphon...
    釆心贼阅读 302评论 0 0
  • 文/蓝兮 01. 上周末,我带老公参加了一个朋友的工作室组织的汉服活动,学做手工细花。本以为他会觉得无聊,坐不住。...
    蓝兮姐姐阅读 287评论 0 2
  • 离开你,忽然觉得失去了全世界,我苦苦的追了你3年,3年啊,现在……,我们分开了,但我并没有放弃你,终于,你答...
    只为你写作阅读 320评论 1 1