1 UIView

1.1 创建自定义的UIView的xib文件

[1]设置 file's Owner的 Custom Class 中的class 执行自定义控件类

[2]设置当前UIView 的屏幕大小

Simulated Metrics 中 Size 为FreeFrom,其他的Bar选项设置为None

[3]自定义控件的两种加载方式实现

- (id)initWithFrame:(CGRect)frame //通用在代码中设置frame生成控件的方式

-(id)initWithCoder:(NSCoder *)aDecoder //通过xib文件加载方式生成控件

- (void) awakeFromNib

[4]获得当前控件的frame

self.frame;

[5]在自定义控件中获取自定义nib控件

NSBundle* bundle=[NSBundle mainBundle];

views= [bundle loadNibNamed:@"UIMainMenuButton1" owner:self options:nil];

UIView* uiview=[views objectAtIndex:0];

[6]设置自定义属性

在类中添加自定义属性

在添加自定义类的xib文件中选择类,并在show the identity inspector 选项卡中添加 user defined runtime attributes

      

   [7]自定义控件 不能计算当前控件的实际的宽高,但系统自带的控件,如UILabel可以计算实际的宽高,

在auto layout设置中必须高度,和宽度

[8]裁减内容

设置clips subviews 选中

[9]UIView和UIControl

UIView是UIControl的基类,UIControl中包含了触控事件实现

基于UIControl的类,可以直接在xib文件中直接设置action

在实现自定义控件过程中,如果类的实现的界面中包含子控件,且子控件覆盖界面全部,则在类实现的触控事件就不会触发(一般将事件移植到子控件中)

2    auto layout

[1] 在xib文件中的 show file inspector,选择Use auto layout

[2]  添加控件的约束

从菜单项 Editor-->pin

xib界面的右下方 选择

[3]常见约束,长宽

相对于父容器的四个边的距离

相对于父容器,横向,纵向居中对齐,

相对于其他控件,长度,宽度相等,左边,右边,中间对齐,上边,下面,对齐,横向间隔,纵向间隔

[4]编辑修改当前任一控件的约束

直接选择控件,根据面板中显示的约束线,双击并修改

选择控件,查看Show the size inspector 面板,显示当前的约束,并修改

[5]常见界面设置尺寸为4.7 inch

3 自定义UIScrollView控件frame设置步骤

先设置UIScrollView 的frame

设置UIScrollView的content View 的frame ,并计算出 content View 的高度

设置UIScrollView 的contentSize

4

ios界面布局整理的更多相关文章

  1. 【IOS界面布局】横竖屏切换和控件自适应(推荐)

    [IOS界面布局]横竖屏切换和控件自适应(推荐) 分类: [MAC/IOS下开发]2013-11-06 15:14 8798人阅读 评论(0) 收藏 举报 横竖屏切换 自适应 第一种:通过人为的办法改 ...

  2. iOS界面布局设计

    参考资料: 1. 谈谈如何学习ios 8的界面和布局设计 2. iOS 8 Auto Layout界面布局系列 3. 为iPhone 6设计自适应布局 4. 几张图弄明白iOS布局中的尺寸问题

  3. iOS 界面布局,设置约束

    1. 设置控件的宽度是父视图的宽度的1/2 在控件上按住ctrl,按住鼠标左键,拖动到父视图,这时出来一个选项,选中aspect 在Multiplier中填上1:2 即可,其它的比例也是这样 2. 设 ...

  4. iOS 界面布局

    1. auto layout http://www.devtalking.com/articles/adaptive-layout-for-iphone6-1/ http://blog.sina.co ...

  5. ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局

    本文转自 :http://www.cnblogs.com/wendingding/p/3761730.html ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布 ...

  6. iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局

    iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局 一.项目文件结构和plist文件 二.实现效果 三.代码示例 1.没有使用配套的类,而是直接使用xib文 ...

  7. iOS下的界面布局利器-MyLayout布局框架

      Swift:TangramKit: https://github.com/youngsoft/TangramKit OC:MyLayout: https://github.com/youngsof ...

  8. iOS中xib与storyboard原理,与Android界面布局的异同

    用文本标记语言来进行布局,用的最多的应该是HTML语言.HTML能够理解为有一组特殊标记的XML语言. 一.iOS中xib与storyboard显示原理 在iOS中基本的布置界面的方式有3种:代码.x ...

  9. BearSkill纯代码搭建iOS界面

    欢迎相同喜欢动效的project师/UI设计师/产品增加我们 iOS动效特攻队–>QQ群:547897182 iOS动效特攻队–>熊熊:648070256 浅谈一下 关于iOS兼容布局一直 ...

随机推荐

  1. 【C#】第3章补充(二)如何将图形作为对象

    分类:C#.VS2015 创建日期:2016-06-23 使用教材:(十二五国家级规划教材)<C#程序设计及应用教程>(第3版) 一.要点 该例子属于高级技术中的基本用法.对于初学者来说这 ...

  2. ASP.NET MVC 网站开发总结(一)

    历经一个多月的努力,工作室的门户网站(http://www.wingstudio.org)终于结束了内部公测. 仔细算一下,大概把网站开发出1.0版本大概用了一个月的时间(主要是利用课余时间),其后大 ...

  3. structs常见错误

    原因:打开struts-default.xml文件 解决办法: 重启Myeclipse

  4. 算法:欧几里得求最大公约数(python版)

    #欧几里得求最大公约数 #!/usr/bin/env python #coding -*- utf:8 -*- #iteration def gcd(a,b): if b==0: return a e ...

  5. Scalaz(16)- Monad:依赖注入-Dependency Injection By Reader Monad

    在上一篇讨论里我们简单的介绍了一下Cake Pattern和Reader Monad是如何实现依赖注入的.主要还是从方法上示范了如何用Cake Pattern和Reader在编程过程中解析依赖和注入依 ...

  6. JAVA JDK的动态代理反射实现

    动态代理类使用到了一个接口InvocationHandler和一个代理类Proxy ,这两个类配合使用实现了动态代理的功能. 什么是动态代理呢?  普通代理类是指: 给每个具体类写一个代理类,以后要使 ...

  7. 今天做项目时,用到了好多关于js的知识点,有的忘记了,然后晚上回来自己整理一番,明天继续整理。哈哈,分享给大家。

    javascript 数据类型 typeof (直接量/变量)-------判断数据类型 简单数据类型(栈,空间小,速度快) string字符串 用引号引起来的文本 number数字 所有数字 NaN ...

  8. C# AOP框架入门

    AOP面向切面编程(Aspect Oriented Programming),是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.Spring框架用的核心技术就是AOP,是函数式编程的一 ...

  9. 15个优秀的 Material Design(材料设计)案例

    Material Design (材料设计)是由谷歌创建和设计的一种设计语言,结合成功的设计的经典原则以及创新科技.谷歌的目标是开发一个设计系统,让所有的产品在任何平台上拥有统一的用户体验.全新的设计 ...

  10. Swiper – 经典的移动触摸滑块插件【免费】

    Swiper 是移动 Web 开发中最常用的滑块插件,是一款免费的,最现代化的移动触摸滑块,支持硬件加速的转换和惊人的原生表现.它的目的是在移动网站,移动 Web 应用程序和 Hygrid 混合应用程 ...