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. net发布的dll方法和类显示注释信息(字段说明信息)[图解]

    自己发布的dll添加的另一个项目中突然没有字段说明信息了,给使用带来了很多的不便,原因是为了跨项目引用,所以导致不显示注释信息的,一下是解决这个问题的方法. 在要发布(被引用)的项目上右键 => ...

  2. 数据库SQL server规则的创建、查看、修改和规则的绑定与松绑、删除

    用CREATE RULE语句创建规则 创建雇佣日期规则 hire_date_rule CREATE RULE hire_date_rule AS @hire_date>='1980-01-01' ...

  3. apache配置运行zendframework 2

    其实ZF不用安装,只需引入就行,将ZF的library引入到项目的vendor\ZF2  就可以在ZF中开发了 在php版本5.4以上, 1 确保开启 extension=php_pdo.dllext ...

  4. UrlRewrite(URL重写)--ASP.NET中的实现

    概述 今天看了下URL重写的实现,主要看的是MS 的URL Rewrite. URL重写的优点有:更友好的URL,支持老版本的URL URL重写的缺点有:最主要的缺点是性能低下,因为如果要支持无后缀的 ...

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

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

  6. 常让人误解的一道js小题

    一道小题引发的深思 今天无意中看到一个js笔试题,不由得想起初学js那会被各种题目狂虐的心酸,虽说现在也会被笔试题所虐,但毕竟比之前好了很多,下面就是我的个人理解,欢迎拍砖.指正: var x = 1 ...

  7. AloneJs —— 简洁高效的JavaScript UI库

    以前做项目时用了一些第三方的JS UI库,项目比较low的时候用还行,一旦项目要求比较高,特别是交互比较复杂时,某些第三方UI库就显得无能为力,用起来也不顺手,改也不好改,所以我就自己基于jQuery ...

  8. CSS基础教程 -- 媒体查询屏幕适配

    响应式布局 Media Query 的使用方法 在上例中, 我们使用Media Queries来根据3种不同尺寸的窗口使用3种不同的样式.通过不同的媒体类型和条件定义样式表规则,媒体查询让CSS可以更 ...

  9. SAP查询事务、表属于哪个模块

    这个功能主要是在汇报SAP的产品问题时,让你知道该选择你所汇报的问题所哪个子模块的.它可以依据事务代码.表.程序名.域.数据元素来查找.     方法:SE38,执行报表程序:RSSTATUS .

  10. Office 365 – SharePoint 2013 Online 之WebPart开发、部署教程

    1.打开Visual Studio,新建一个项目,选择SharePoint空项目,如下图: 2.选择调试站点和沙盒解决方案,如下图: 3.在项目中,添加一个WebPart,如下图: 4.添加完毕的项目 ...