写项目

写项目

              1、自定义tabBar
vc或nav作为它的子控制器
设置图片或选中下的图片
            2.一个表上使用多个自定义类cell
可新建多个cell类,统一类注册,统一出列。不同的区不同的行return不同的cell。
          3.在if非语句中自定义cell:常用于自定义区头
自定义区头注意contentView
防止循环引用:直接在语句内return headView,在语句外                           —           return nil
                 4.类别的方法和类方法的区别
类别的方法是扩充的:"使用者"直接用
类方法:需要把"使用者"当参数传进去
对象方法:需要把"使用者"当参数传进去
                  5.collctionView和表
一片内容对应一项
确定好有几个区
每个区都注册自定义类,布局好
                  6.自定义类里创建控件
表单元格优选drawrect
懒加载重写get
初始化init

            ## 7.点击按钮之小红条 ##
先设置labelcenter和bunds
再改变它的center


             ## 8.点击按钮之变色 ##
设置选中状态和非选中状态的颜色
selectIndex 和 tag 分别对应上一个btn和当前btn


          ## 9.解析封装model类 ##
多个同类型的字典就是一个model类
model类和model类之间通过 属性数组 联系
取:Model1*model1 = self.dataArray【】;
   Model2*model2 = model1.subdataArry【】;
   从数组里取出model 
      ## 10.contolletionView的布局 ##
 属性设置:设置区内部的行间距和列间距
 代理方法1:设置区距外边缘的上左下右 间距
 代理方法2:设置每个Item的大小
 代理方法3:设置区头高度

          ## 11.Display:横向colletionView的实现 ##

上层VC作为底层VC的childVC,底层view add到 上层的view

滑动方法内发通知:监听索引变化

set方法内更新数据

viewDidLaod:发网络请求 更新数据 加载非表控件



                 ## 12.数据传递 ##index和数组
                  ## 13.李明杰 下拉刷新 ##

一个方法写下拉刷新,开始刷新,上拉加载
方法内部加请求
                 ## 14.表的使用 ##
 viewDidLoad注册,表内出列

 自定义控件:可以重写自定义类的init方法添加到self;也可以在                                     
           cellForRow方法上写
 尽量分区

 plan下的分区,可以卡住区头         

                  ## 15.多个button只选一个 ##

找上个button,改状态

变量重新赋值


                 ## 15.CoreData的使用 ##


                    ## 16.设置按钮边框 ##

button.layer.borderWidth = 0.5f;

button.layer.borderColor = [UIColor grayColor].CGColor;

button.layer.masksToBounds = YES;

                    ## 17.label中间加斜杠 ##



                   ## 18.去除数组中的重复对象的方法 ##

//  将数组重复的对象去除,只保留一个
- (NSMutableArray *)arrayWithMemberIsOnly:(NSArray *)array
{
    NSMutableArray *categoryArray = [[NSMutableArray alloc] init];
    for (int i = 0; i < array.count; i ++) {
        if ([categoryArray containsObject:[array objectAtIndex:i]] == NO) {
            [categoryArray addObject:[array objectAtIndex:i]];
        }
    }
    return categoryArray;
}

                            ## 19.通知传值 ##

先监听
再发通知
调用通知方法:text.userInfo是字典
   - (void)tongzhi:(NSNotification *)text
    {
    NSLog(@"%@",text.userInfo[@"textOne"]);
        NSLog(@"-----接收到通知------");

     }
                        ## 20.单行文本和多行文本 ##
单行文本:sizeWithAtrributes

多行文本:bondingRectWitnSize
                         ## 21.圆 ##

center:CGPOintMake:(Center_X+R*cos(button.single*M_PI/180) , Center_Y + R*sin(button.single*M_PI/180))

bounds:
                    ## 22.自定义按钮的声明 ##

@interface  Mybutton : UIButton



@end
                     ## 22.多个按钮之————只有一个有选中状态 ##


找到上一个按钮,选中状态设为NO

                         ##23 按钮的逻辑 ##
给model类BOOL选中属性,给单元格BOOL选中属性

1.cell上的图片:
2.区头按钮:
3.全选按钮:
                      ## 购物车 ##

1.遍历model类,计算处于选中状态的model 的价格

2.全选按钮:状态=按钮的tag值

3.cell上的按钮:传cell得到indexPath,再找到cell上的model类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值