iOS 心得整理

很长时间没有整理博客,这个工作一直很忙.应该说是瞎忙,没有什么目的性的去开发.什么都接触了一些,之前整理的都是oc中基础的一些东西,因为怕以后用的时候因为不常用就忘记了,下面说一些开发中常见的几个问题以及解决方案

1. tableView中有时候会重用,这个问题并不是常见的,只有在cell 中写循环创建的时候会有这样的问题.虽然知道是重用问题但是并不知道问题的所在原因,不过有解决办法:

通常在写tableView的时候会直接注册重用池之后再cellforrow中写

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCellIdentifier"];

       

        return cell;

  这样会出现问题 , 改为

static NSString *priceCellIdentifier = @"UITableViewCellIdentifier" ;

  UITableViewCell *cell = [tableView cellForRowAtIndexPath :indexPath];
        if (cell == nil ) {
            cell = [[
UITableViewCell alloc ] initWithStyle : UITableViewCellStyleDefault reuseIdentifier :priceCellIdentifier];

        }
        cell.
selectionStyle = UITableViewCellSelectionStyleNone ;
       
        return cell;
这样之后就没有了重用问题
2. 举个例子:从Avc 跳转到Bvc , 再从Bvc 跳转到Cvc 再想从Cvc返回到Avc的时候用
for (UIViewController *controller in self.navigationController.viewControllers) {
         if ([controller isKindOfClass:[PreferentialViewController class]])
             [
self.navigationController popToViewController:controller animated:YES];
    }

3.多图片上传: 如果有剪切的话会把剪切的文件和原文件一起放到一个数组里上传到服务器,这样的话会出现上传的文件丢失(说是丢失也可以 就是后面的图片上传不过去) 这个问题就是把剪切的方法去掉就可以了,这个问题因为找不到原因曾经困扰了我很久,因为两个图片的图片名和路径不同(一个是剪切的 一个是原图)导致以为是上传成功.实际是传上去了两个一样的图片.曾经困扰了我2天!!!


4.现在很流行的下拉的时候navigation透明度的变化

self.topV.alpha = content / (270.0 * LY_HEIGHT);

这一句话就可以完成了!

5.tableView的分割线顶头的方法:

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {

    if ([cell respondsToSelector:@selector(setSeparatorInset:)])

    {

        [cell setSeparatorInset:UIEdgeInsetsZero];

    }

  if ([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)])

    {

        [cell setPreservesSuperviewLayoutMargins:NO];

    }

    if ([cell respondsToSelector:@selector(setLayoutMargins:)])

    {

        [cell setLayoutMargins:UIEdgeInsetsZero];

    }

}


6.个人觉得把分享和支付功能写在基类里特别好用

7.进入页面不显示tabbar 返回的时候显示 这几句话就搞定了!(showVIewController和push一样效果,showDetailViewController和模态一样)

self.hidesBottomBarWhenPushed = YES;

  [self showViewController:adWeb sender:self];

    self.hidesBottomBarWhenPushed = NO;


8.self.view.frame的大小不对 在vc中写layout 在里面写
self.view.frame = [UIScreen mainScreen].bounds.size

9.通知传值,点击方法什么的要比代理好用的多了~

空闲之余,所想随笔.以后还会更新...所写没有前后顺序,想到哪写到哪的都是
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值