zoukankan      html  css  js  c++  java
  • 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根类提供的类方法,调用时机为当被调用的方法实现部分没有找到,而消息转发机制启动之前的这个中间时刻。

    提高技能如同提升自信心。
  • 相关阅读:
    Vmware安装Ubuntu ==> 连网成功
    在 ns3.25中添加 plc(电力线载波) 模块
    Ubuntu12.04下安ns3.29及Ubuntu换源方法
    微信支付小程序版
    微信小程序打开外部链接
    linux下安装Mongodb
    延迟执行+异步 之代码分析1
    Vue入门
    实验一
    实验二
  • 原文地址:https://www.cnblogs.com/chims-liu-touch/p/7325749.html
Copyright © 2011-2022 走看看