1. 程式人生 > >IOS布局筆記一(代碼實現自己主動布局)

IOS布局筆記一(代碼實現自己主動布局)

tde tps space sina idt normal title 2014年 otto



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

限制條件和他們要加入到的視圖的關系圖例如以下:

技術分享

轉載請註明:版權全部點擊打開鏈接

接下來學什麽:IOS布局筆記二( Visual Format Language 定義水平和垂直約束)



IOS布局筆記一(代碼實現自己主動布局)