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

    提高技能如同提升自信心。
  • 相关阅读:
    【.Net--资料】
    【系统Configmachine.config与自己的应用程序的App.config/Web.Config配置节点重复】解决方法
    【AutoMapper】实体类间自动实现映射关系,及其转换。
    【EntityFramwork--处理数据并发问题】
    【IOC--Common Service Locator】不依赖于某个具体的IoC
    Android学习——碎片Fragment的使用
    Android学习——利用RecyclerView编写聊天界面
    Android学习——控件ListView的使用
    Android学习——LinearLayout布局实现居中、左对齐、右对齐
    Android学习——Button填充颜色及实现圆角
  • 原文地址:https://www.cnblogs.com/chims-liu-touch/p/7325749.html
Copyright © 2011-2022 走看看