• IOS学习之路(代码实现自动布局)


    1.将一个试图放置在其父视图的中央位置,使用限制条件。
    2.创建两个限制条件:一个是将目标视图的 center.x 位置排列在其父视图的 center.x 位置,并且另外一个是将目标视图的 center.y 位置排列在其父视图的 center.y 位置。
    3.首先在 WildCatViewController.h中添加一个Button
    //
    // WildCatViewController.h
    // AutoLayoutDemo
    //
    // Created by wildcat on 14-4-20.
    // Copyright (c) 2014年 com.wildcat. All rights reserved.
    //
    #import <UIKit/UIKit.h>
    @interface WildCatViewController : UIViewController
    @property(nonatomic,strong) UIButton*button;
    @end
    在.m文件中实现:

    //
    // WildCatViewController.m
    // AutoLayoutDemo
    //
    // Created by wildcat on 14-4-20.
    // Copyright (c) 2014年 com.wildcat. All rights reserved.
    //
    #import "WildCatViewController.h"@interface WildCatViewController ()
    @end
    
    @implementation WildCatViewController
    @synthesize button=_button;
    - (void)viewDidLoad
    {
    [super viewDidLoad];
    _button=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    _button.translatesAutoresizingMaskIntoConstraints=NO;
    [_button setTitle:@"WildCat" forState:UIControlStateNormal];
    [self.view addSubview:_button];
    
    UIView *superView=_button.superview;
    //添加约束,使按钮在屏幕水平方向的中央
    NSLayoutConstraint *centerXContraint=[NSLayoutConstraint
    constraintWithItem:_button
    attribute:NSLayoutAttributeCenterX
    relatedBy:NSLayoutRelationEqual
    toItem:superView
    attribute:NSLayoutAttributeCenterX
    multiplier:1.0f
    constant:0.0];
    //添加约束,使按钮在屏幕垂直方向的中央
    NSLayoutConstraint *centerYContraint=[NSLayoutConstraint
    constraintWithItem:_button
    attribute:NSLayoutAttributeCenterY
    relatedBy:NSLayoutRelationEqual
    toItem:superView
    attribute:NSLayoutAttributeCenterY
    multiplier:1.0f
    constant:0.0];
    //给button的父节点添加约束
    [superView addConstraints:@[centerXContraint,centerYContraint]];
    
    }
    
    -(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskAll; //屏幕可以旋转
    }
    
    - (void)didReceiveMemoryWarning
    {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
    }
    
    @end

    不要忘记更改设备可以旋转方向,
    运行结果如下图:

    本文转自:http://1.wildcat.sinaapp.com/?p=42

    限制条件和他们要添加到的视图的关系图如下:

     

     

    layout

     转载请注明:版权所有http://1.wildcat.sinaapp.com/

    未完待续……


  • 相关阅读:
    freenas的踩坑记录:群晖CIFS挂载freeNas的smb共享目录
    【ikuai】爱快软路由上手
    Nacos集成Spring Cloud Gateway使用第三章:nacos配置中心
    Nacos集成Spring Cloud Gateway使用第二章:上手demo
    Nacos集成Spring Cloud Gateway使用第一章:理解解释
    函数指针数组
    回调函数
    使用C语言实现strcpy函数和字符串大小写交换
    Qt : Setting应用程序的数据保存和读取
    Qt 文件操作以及字体颜色选择
  • 原文地址:https://www.cnblogs.com/lixingle/p/3707687.html
Copyright © 2020-2023  润新知