zoukankan      html  css  js  c++  java
  • iOS 知识点

    1、用 命令 “ -fno-objc-arc” 将ARC工程中的一个.m文件单独设置为MRC编码编译

      步骤:ProjectName -> Target -> Build Phases ->  .m -> Complier flags -> 填写命令 "-fno-objc-arc "

    2、禁止 TableView的header的悬浮,添加以下代码即可

    //禁止 cell header 悬浮

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView {

        CGFloat sectionHeaderHeight = 50;

        if(scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {

            scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);

        } else if (scrollView.contentOffset.y>=sectionHeaderHeight) {

            scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);

        }

    }

     

    3、 打印字体库

    //    打印字体库

        for(NSString *familyName in [UIFont familyNames]){

            NSLog(@"Font FamilyName = %@",familyName); //*输出字体族科名字

            for(NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {

                NSLog(@" %@",fontName);         //*输出字体族科下字样名字

            }

        }

     

    4、解决tableView cell 不贴边,在 cellForRowAtIndexPath 代理方法中添加

     

    //tableViewcell 不贴边解决2

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

            [cell setSeparatorInset:UIEdgeInsetsZero];

        }

     

    5、 获取cell在tableView 中的位置 或者屏幕上的位置

      可以在didselectRowAtIndexPath方法里使用如下代码

     

      CGRect rectInTableView = [tableView rectForRowAtIndexPath:indexPath];
      CGRect rectInSuperview = [tableView convertRect:rectInTableView toView:[tableView superview]];

     6、获取cell在collectionView中的位置或屏幕上的位置

      -(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
    {
           UICollectionViewCell * cell = (UICollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];
        
        /*
         获取当前点击的cell位置大小,以此设定view2初始大小和位置
         */
        //cell在当前collection的位置
        CGRect cellRect = [_collectionView convertRect:cell.frame toView:_collectionView];
        NSLog(@"987654321- %f - %f # %f - %f",cellRect.origin.x,cellRect.origin.y,cellRect.size.width,cellRect.size.height);
        //cell在当前屏幕的位置
        CGRect rect2 = [_collectionView convertRect:cellRect toView:self.view];
        NSLog(@"987654321- %f - %f # %f - %f",rect2.origin.x,rect2.origin.y,rect2.size.width,rect2.size.height);
    }

     

     

     

  • 相关阅读:
    Linux学习笔记(第一章)
    C#中的抽象类有什么好处?究竟它是用来干事什么的呢?
    C#中的 增 、删、 改、 查功能
    在Visual C#中用ListView显示数据记录
    10.14JDBC之数据库连接池之C3P0
    10.19JDBC之使用C3P0连接池重新实现JDBCUtils方法
    10.12JDBC之DAO实现类的优化
    10.13JDBC之数据库连接池
    RhinoMock入门(3)——4种Mock类型
    wse说谈(3)——策略,用户令牌
  • 原文地址:https://www.cnblogs.com/wjw-blog/p/8601049.html
Copyright © 2011-2022 走看看