zoukankan      html  css  js  c++  java
  • 创建mvc

    有几个界面就建几个文件夹
    每个文件夹中都有三个文件夹,(models,Controllers,views)
    创建一个common 和一个Base文件夹(先建文件夹,可以直接拉进去)
    common的目的是创建第三方框架
    Base是其他基础(Baseviewcontroller 和BasenavigationController,BaseTabBarController)
    创建PCH(预编译文件)文件(目的是在整个文件编译之前导入头文件,避免重复导入)
    导入预编译的文件
    1Base文头文件
     
     宏定义
    2#define  新名  旧名
     
     3common文件
      common文件有第三方的头文件(common的类型是 Header File文件)
     
     
    //创建窗口
    //创建标签控制器
     设置为窗口的足视图控制器
     设置标签控制器的控制器数组
     
     for ( in){  }//遍历数组????
    初始化控制器数组(NSClassFromString(类名),控制器的初始化[NSClassFromString(类名) alloc] init],这个控制器初始化的值用父类来接收)
    设置 控制器的TabBarItem.title 
                           TabBarItem.image
     
    初始化导航控制器的数组设置根视图为上面初始化的控制器
     
     
     
    //在每个视图控制器的init方法中加入每个视图控制器的标题
       控制器.title = @“标题”;(注如果不设置title的话,默认设置的是控制器.TabBarItem.title )
     
    //NavigationBar的背景颜色和字体
     在BaseNavigationController里进行设置
     self.navigationBar.backgroundColor//这样不是我们想要的
     
    //定制一个类的外貌直接作用于父类??
    推荐使用
     
     
    //定制系统状态栏风格??(如果隐藏了导航栏的话,要重写这个方法)
     
     
     
    //主页面
     隐藏导航控制器
    新建一个自定义导航控制器的视图
    新建一个自定义的导航控制器器的背景图
     
     
    在导航控制器中放控件
     
     
    左侧安钮
    button的文字的偏移属性
    button的图片的偏移属性
     
    记住当一个视图控制器有导航控制器 和标签控制器的时候,当这个视图控制器pushViewController的时候push到的控制器页拥有了标签控制器 和 导航控制器
     
    //如果相似的文件中代码重复多的话,我们可以写这几个相似文件的父类
     
    //在视图控制器中
     
     
    这3中方法的先后顺序
    -(id)init
    -(void)loadView
    -(void)ViewDidLoad(在这时候这个控制器的View才能显示出来,才能在这个控制器的View上加其它的视图)
     
    NavgationBar 自带一个边缘手势(就是我们滑动的时候可以返回到上一个界面(但我们把Navgationbar隐藏的时候,这个边缘手势也就没有了))
     
     
    一般创建手势的时候,我们一般用swipe的清扫手势
     
    - (void)swipeAction:(UISwipeGestureRecognizer *)swipe {

        switch (swipe.direction) {
            case UISwipeGestureRecognizerDirectionRight:
            {
                CGPoint point = [swipe locationInView:self.view];//这个是判断这个手势的点在这个控制器的View里面的位置
               
                if (point.x < 20) {
                   
                    [self.navigationController popToRootViewControllerAnimated:YES];
                }
               
            }//记住,当Case里面使用的是函数的时候可以不用大括号,但是当调用方法的时候必须使用大括号
                break;
               
            default:
                break;
        }

    }
     
     
    //当用代码写的时候必定用
    -(id)initWithFram:(CGRect)fram{
    }
    //当用xib进行加载的时候
    —(void)awakFromNib{
    }
     
    //怎么才能走到这个类里面,必须复写init方法
     
     
    //表视图
    (两个必须实现的方法)datasource
     
    //1返回单元格的个数
    //2每个单元个的样子{
         //设置一个标识符
       我们的单元格首先要到tableView(表视图)复用池里面去取,根据就是标志符
     static NSString *identfier = @"HomeCell";
       
        HomeTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identfier];
     
    //判断复用池里有没有带有标志符的cell,
    如果没有的话我们就去创建
        if (!cell) {
           
        cell = [UITableview alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
       
    }
     
    //delegate
    //行高
    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

        return 150;
    }
     
         
     
    /声明代理的时候必须用assign
    @property (nonatomic, assign)id <HomeTableViewDelegate> scrollDelegate;  
     
     
     
    //图片的加载
       加载本地的图片方式
     
     
     
      加载网络图片方式
      URL是图片在网路上的存储地址
     
     
     
    当一个变量用的次数多的时候就声明为全局变量,当用的次数不多的时候那么就用tag值
     
     
     
     // 过渡形式实现翻转动画
        UIViewAnimationTransition transition = flip?UIViewAnimationTransitionFlipFromLeft:UIViewAnimationTransitionFlipFromRight;
     
    //注意
       // 3.数据传递。(一是数据,二是子视图 当二者全部存在是才能完成数据的传递)
        _tableView.dataList = _homeModels;
       
        _posterView.dataList = _homeModels;
        
       @property (nonatomic, strong)HomeModel *model;//注意model属性用 strong
     
     
     
     
     
    //把字典存储为一个类的形式,属性就是key值,value就是属性的值
  • 相关阅读:
    Java_File类
    Java_Math类和Random类
    Java_包装类
    Java_Stringbuilder和StringBuffer
    Java_String
    Java_数组, 懒得整理了 ---------------------> 未完, 待续
    Java_内部类
    Java_三大特征相关
    Java_垃圾回收机制(未掌握)
    重载(overload)和重写(override)的区别?
  • 原文地址:https://www.cnblogs.com/apple-image/p/5345606.html
Copyright © 2011-2022 走看看