• iOS之UI设置随记


    1、设置button的正面投影效果:

        self.layer.shadowOffset =  CGSizeMake(1, 1);

        self.layer.shadowOpacity = 0.6;

        self.layer.shadowColor =  [UIColor blackColor].CGColor;

    2、设置label某个文字的颜色大小:

    NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:label.text];
        //设置字号
        [str addAttribute:NSFontAttributeName value:font range:range];
        //设置文字颜色
        [str addAttribute:NSForegroundColorAttributeName value:vaColor range:range];
        label.attributedText = str;

    3、自定义UINavigationController的leftBarButtonItem按钮右滑返回

       a、

    /////在push前充值器设置代理

    - (void)viewDidAppear:(BOOL)animated {

    self.navigationController.interactivePopGestureRecognizer.delegate = (id)self;//代理

    self.navigationController.interactivePopGestureRecognizer.enabled = NO;//不能右滑

    }

    //////推出后设置Pop能滑动

    - (void)viewDidLoad{

    self.navigationController.interactivePopGestureRecognizer.enabled = YES;

    }

       b、

    UIImage *backimg = [UIImage imageNamed:@"返回icon"];

        backimg = [backimg imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

        self.navigationBar.backIndicatorImage = backimg;

        self.navigationBar.backIndicatorTransitionMaskImage = backimg;

        UIBarButtonItem *buttonItem = [UIBarButtonItem appearanceWhenContainedInInstancesOfClasses:@[[UINavigationBar class]]];

        UIOffset offset;

        offset.horizontal = -500;

        [buttonItem setBackButtonTitlePositionAdjustment:offset forBarMetrics:UIBarMetricsDefault];

    - (void)addBorderToLayer:(UIView *)view { CAShapeLayer *border = [CAShapeLayer layer];
    // 线条颜色
    border.strokeColor = [UIColor blackColor].CGColor;
    border.fillColor = nil; border.path = [UIBezierPath bezierPathWithRect:view.bounds].CGPath; border.frame = view.bounds;
    // 不要设太大 不然看不出效果 border.lineWidth = 1; border.lineCap = @"square"; // 第一个是 线条长度 第二个是间距 nil时为实线 border.lineDashPattern = @[@9, @4]; [view.layer addSublayer:border]; }
     
    1. if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"baidumap://"]])// -- 使用 canOpenURL 判断需要在info.plist 的 LSApplicationQueriesSchemes 添加 baidumap 。  
    5、UITableView一个知识点,就是在不会显示满屏的情况下,不会出现多余的cell的分界线(separator).主要有四种方法:

        a.设置tableview的tablefooterview为一个空的view;

        b.设置separator的样式style为None并且自定义cell的边线;

        c.tableview的style设置为Grouped;(跟a/b的区别是最后一条分割线是封闭的)


      6、iOS添加边缘手势实现侧滑

       UIScreenEdgePanGestureRecognizer *interactiveTransitionRecognizer;

        interactiveTransitionRecognizer = [[UIScreenEdgePanGestureRecognizer alloc] initWithTarget:self action:@selector(interactiveTransitionRecognizerAction:)];

        interactiveTransitionRecognizer.edges = UIRectEdgeRight;

        [self.view addGestureRecognizer:interactiveTransitionRecognizer];

    7、+(BOOL) resolveInstanceMethod:(SEL) sel

    这是NSObject根类提供的类方法,调用时机为当被调用的方法实现部分没有找到,而消息转发机制启动之前的这个中间时刻。

    提高技能如同提升自信心。
  • 相关阅读:
    Django项目:CRM(客户关系管理系统)--54--45PerfectCRM实现账号快速重置密码
    Django项目:CRM(客户关系管理系统)--53--44PerfectCRM实现账号快速注册登陆
    Python 原生2种 邮件发送(发送验证码) 的方法
    Django项目:CRM(客户关系管理系统)--52--43PerfectCRM实现AJAX全局账号登陆
    Django项目:CRM(客户关系管理系统)--51--42PerfectCRM实现AJAX全局账号注册
    Django项目:CRM(客户关系管理系统)--50--41PerfectCRM实现全局账号密码修改
    Django项目:CRM(客户关系管理系统)--49--40PerfectCRM实现全局账号注册+验证码+页面刷新保留信息
    Django项目:CRM(客户关系管理系统)--48--39PerfectCRM实现登录+验证码+过期时间+页面保留账号
    mvc 伪静态任意扩展名的实现方法
    asp.net mvc各种传值方式大全
  • 原文地址:https://www.cnblogs.com/chims-liu-touch/p/7325749.html
Copyright © 2020-2023  润新知