zoukankan      html  css  js  c++  java
  • 如何使用自动布局让自己更快的开发?

    Autolayout是一种“自动布局”技术,专门用来布局UI界面
    Autolayout能很轻松地解决屏幕适配问题
    Autolayout的两条核心概念:
      >1 参照:通过参照其他控件或父控件来设置当前控件地位置和大小
      >2 约束Constraints(规则):通过添加约束限制控件地位置和大小
     
    代码实现Autolayout的步骤
     1. 利用NSLayoutConstraint类创建具体的约束对象
        2. 添加约束对象到相应的view上
    - (void)addConstraint:(NSLayoutConstraint *)constraint;
    - (void)addConstraints:(NSArray *)constraints;
    1. 代码实现Autolayout的注意点:
    1》 要先禁止autoresizing功能,设置view的下面属性为NO
    view.translatesAutoresizingMaskIntoConstraints = NO;
    2》 添加约束之前,一定要保证相关控件都已经在各自的父控件上
    3》不用再给view设置frame
     
    一个NSLayoutConstraint对象就代表一个约束
    创建约束对象的常用方法
    +(id)constraintWithItem:(id)view1 attribute:(NSLayoutAttribute)attr1 relatedBy:(NSLayoutRelation)relation toItem:(id)view2 attribute:(NSLayoutAttribute)attr2 multiplier:(CGFloat)multiplier constant:(CGFloat)c;
           view1 :要约束的控件
    attr1 :约束的类型(做怎样的约束)
    relation :与参照控件之间的关系
    view2 :参照的控件
    attr2 :约束的类型(做怎样的约束)
    multiplier :乘数
    c :常量
          自动布局有个核心公式
            obj1.property1 =(obj2.property2 * multiplier)+ constant value
  • 相关阅读:
    第 425 期 Python 周刊
    第 423 期 Python 周刊
    第423期 Python 周刊
    Python Weekly 422
    第421期 Python 周刊
    第420期 Python 周刊
    LeetCode 3: 无重复字符的最长子串 Longest Substring Without Repeating Characters
    Python Weekly 419
    LeetCode 771: 宝石与石头 Jewels and Stones
    LeetCode 652: 寻找重复的子树 Find Duplicate Subtrees
  • 原文地址:https://www.cnblogs.com/1224dashen/p/5423045.html
Copyright © 2011-2022 走看看