首页
学习
活动
专区
圈层
工具
发布

android

目前iOS开发中大多数页面都已经开始使用Interface Builder的方式进行UI开发了,但是在一些变化比较复杂的页面,还是需要通过代码来进行UI开发的。...: 1 pod  'Masonry' Masonry学习建议 在UI开发中,纯代码和Interface Builder我都是用过的,在开发过程中也积累了一些经验。...所以在纯代码情况下,视图设置的约束是否正确,要以运行之后显示的结果和打印的log为准。 Masonry中的坑 在使用Masonry进行约束时,有一些是需要注意的。...之前使用Interface Builder添加约束,如果约束有错误直接就可以看出来,并且会以红色或者黄色警告体现出来。...这种方式的实现,主要是依赖于创建一个containerView内容视图,并添加到UIScrollView上作为子视图。

1.1K20

浅汇-iOS UI布局

Autolayout简单来说就是一套 `适配iPhone机型`并且`兼容横竖屏`的UI布局系统,Auto Layout 是一个系统,可以让你通过创建元素之间关系的数学描述来布局应用程序的用户界面,是一种基于约束的...我们可以在XIB、StoryBoard中通过拉线的形式给控件视图添加布局约束,通过苹果强大的可视化界 IB(Interface Builder)我们能够轻松的使用AutoLayout完成界面视图的布局。...2、实现了UIView内子视图的自动布局; 3、实现了UIScrollView内容高度根据内部子视图的内容高度动态设置; 4、实现了一个UITableView有多个不同Cell的时候,所有cell高度自适应...实现了UIScrollView可滚动高度根据内部子视图的内容高度动态设置 /** 设置scrollview内容自适应,第一个参数为作为底部的子视图,第二个参数为到sc底部的间距。...` ---- 小结  iOS关于UI布局的知识还有很多,至此我列举了一些需要注意的地方,使用的时候是先初始化`new`比较方便,先加载到父视图上后设置相关的属性,然后再进行布局方面的设置,若后加到父试图上

2.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOS程序员面试,绝对会遇到这些问题!

    能否描述一下如何在应用中使用Apple Pay? 请解释一下iOS应用沙盒机制。 VoiceOver是什么?请举例解释一下iOS中的辅助功能(Accessibility)。开发者如何使用这些功能?...AppDelegate扮演着什么样的角色? 请解释一下NSUserDefaults。就你而言,你会如何在磁盘中对数组对象进行序列化? 你会如何储存用户的认证信息? 请问何为Keychain服务?...iOS使用的是哪些设计模式(Design Patterns)?你的代码库使用的是哪些设计模式? iOS提供哪些线程?如何充分利用这些线程? 请简要描述一下UIScrollView的执行过程。...关于界面 iPhone5、6、6+以及iPad Air 2的屏幕分辨率分别是多少? 分辨率的计算单位是什么? 请解释一下Interface Builder的作用以及NIB文件的概念。...选取器视图(Picker View)适合存放哪类内容? 应该在什么情况下使用标签、文本域和文本视图? 分段控件(Segmented Control)的作用是什么?

    2K20

    六个方向关于iOS100个面试题,你都会了吗?

    能否描述一下如何在应用中使用Apple Pay? 请解释一下iOS应用沙盒机制。 VoiceOver是什么?请举例解释一下iOS中的辅助功能(Accessibility)。开发者如何使用这些功能?...AppDelegate扮演着什么样的角色? 请解释一下NSUserDefaults。就你而言,你会如何在磁盘中对数组对象进行序列化? 你会如何储存用户的认证信息? 请问何为Keychain服务?...iOS使用的是哪些设计模式(Design Patterns)?你的代码库使用的是哪些设计模式? iOS提供哪些线程?如何充分利用这些线程? 请简要描述一下UIScrollView的执行过程。...关于界面 iPhone5、6、6+以及iPad Air 2的屏幕分辨率分别是多少? 分辨率的计算单位是什么? 请解释一下Interface Builder的作用以及NIB文件的概念。...选取器视图(Picker View)适合存放哪类内容? 应该在什么情况下使用标签、文本域和文本视图? 分段控件(Segmented Control)的作用是什么?

    4.2K50

    《iOS UI 开发捷径 利用 Interface Builder 高效、优雅地开发 UI》 读书笔记第1章 Interface Bundle 概要第2章 使用 Interface Builder第3

    nib Next Interface Builder Interface Builder 的优点 开发和维护效率高 减少大量的 UI 代码和“胶水代码” 适配变得十分简单 IB 也可以做一些非 UI 的事情...利用 IB 学习控件可以达到事半功倍的效果 Interface Builder 的缺点 IB 的执行效率没有纯代码高 使用 IB 开发的过程中容易出现一些小问题 有一定的学习成本 文件易冲突 没有代码表达清晰...参考 http://iosdevlog.com/ios/2017/12/19/ios-ui-interface-builder.html 使用 storyboard @available(iOS 5.0...第4章 在 Interface Builder 中使用 Auto Layout ---- 在 IB 中使用 Auto Layout 的优缺点 设置约束十分简单 如果约束不恰当,IB 提供很好的实时反馈...使用吸管快速设置颜色 IB 中的复制与粘贴 command + c command + v 利用 Media Library 快速设置图片 IB 开发中遇到的一些小 bug 最好的做法就是重启 Xcode

    2.9K80

    iOS14开发-UIView

    文字换行 使用 storyboard:设置Lines为 0,然后在Text中用option+回车换行。 使用代码:label.numberOfLines = 0,设置文字的时候用\n换行。...contentInset:ScrollView的内容相对于 UIScrollView 的上下左右的留白。 UIPageControl 页面指示器 一般配合 UIScrollView 分页使用。...pageControl.currentPage = Int(index) } } UITableView 表视图,是 iOS 开发中最重要的 UI 控件之一。...直接在 storyboard 中布局,不需要使用数据源方法,但如果需要使用到代理方法,仍然需要在控制器中实现相应的方法。 适用于基本不需要动态修改、布局固定的页面,如个人中心、设置等。...核心知识 NSCollectionLayoutSize 决定了一个元素的大小。表达一个元素的 Size 有三种方法: fractional:表示一个元素相对于他的父视图的比例。

    14.2K10

    100个iOS开发面试题汇总

    能否列举一些热门或常见的范例? 14.HealthKit是什么? 15.HomeKit是什么? 16.Apple Pay是什么?能否描述一下如何在应用中使用Apple Pay?...28 AppDelegate扮演着什么样的角色? 29 请解释一下NSUserDefaults。就你而言,你会如何在磁盘中对数组对象进行序列化? 30 你会如何储存用户的认证信息?...在Swift中,什么情况下能使用NSError ,什么情况下不能? 42 请说明如何使用Instancetype及其重要性。 43 在Swift中,什么时候该用let,什么时候该用var?...59 请解释一下Interface Builder的作用以及NIB文件的概念。 60 iOS UI的图像储存类型是什么? 61 请描述一下Storyboard和标准NIB文件的差别。...68 选取器视图(Picker View)适合存放哪类内容? 69 应该在什么情况下使用标签、文本域和文本视图? 70 分段控件(Segmented Control)的作用是什么?

    2K30

    ios学习7_iPhone屏幕尺寸、分辨率及适配

    以下基于UIImage的两类初始化API简介高倍图的适配: +imageNamed:该方法使用系统缓存,适合表视图重复加载图像的情形。...从分辨率的角度来看,iPhone6沿用二倍图(@2x),但需为iPhone6+提供更高的三倍图(@3x);从屏幕尺寸角度来看,需要重新对UI元素尺寸和布局进行适配,以期视觉协调。...(3)按字体适配 另外,iPhone的【设置】【通用】【辅助功能】中可以设置调节【更大字体】,APP也可以按字号适配: 例如适配表视图(UITableView:UIScrollView...注意限定控件元素内容区域宽度以及间距,并设置适当的LineBreakMode。表视图支持上下滑动,因此纵向上的表格行高和内容区域高度可按字号缩放。...苹果在WWDC2012 iOS6中就已提出了Auto Layout的概念,即使用约束条件来定义视图的位置和尺寸,以适应不同尺寸和分辨率的屏幕。

    3.6K20

    在Swift中创建可缩放的图像视图

    基本上,我们将在UIScrollView中嵌套一个包含图片的UIImageView,它将处理所有我们扔给它的缩放、平移(和点击!)手势。...我们希望能够以编程方式和通过Interface Builder使用PanZoomImageView,所以让我们处理不同的初始化器,并创建一个通用的init。...设置滚动视图 我们需要实际设置我们的滚动视图,使其可缩放和可平移。这包括设置最小和最大的缩放级别,以及指定用户放大时使用的UIView(在我们的例子中,它将是图像视图)。...我们有了一个UIIm我们已经有了一个嵌套在UIScrollView中的UIImageView,一切都应该是可滚动和可平移的。但是我们如何设置我们的图像呢?...我们还将把imageName标记为@IBInspectable,这样就可以通过Interface Builder来设置它。

    9K20

    【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

    编译项目时 会将 xib 文件转为 nib 文件;  -- nib 文件 : Interface Builder 把窗口, 菜单栏 以及 各种 UI 组件都冻结在 nib 文件中, 使用 nib 界面设计文件...- C 类, 这些类用于保存 处理 数据; -- View 视图 : 使用 Interface Builder 创建的视图组件, 如 xib, storyboard 后缀的界面设计文件; -- Controller...中不需要 使用 @synthesize 设置 setter getter 方法; -- 查看连接关系 : 使用 Xcode 的连接检查器面板查看 IBOutlet 属性 与 UI控件 间关联, 使用...UI 控件事件处理方法; IBAction 事件绑定流程 :  -- 需求 : 为UIButton 组件添加点击方法;  -- 创建 UI 组件 : Interface Builder 中创建 UIButton...; -- 好处 : 可以直观地看到多个视图之间的协作关系, 可以在 Interface Builder 中配置视图之间的切换关系; -- 图示 :  (3) 工具图标 界面设计文件的 工具图标 :

    6.2K30

    ios学习7_iPhone屏幕尺寸、分辨率及适配

    以下基于UIImage的两类初始化API简介高倍图的适配: +imageNamed:该方法使用系统缓存,适合表视图重复加载图像的情形。...从分辨率的角度来看,iPhone6沿用二倍图(@2x),但需为iPhone6+提供更高的三倍图(@3x);从屏幕尺寸角度来看,需要重新对UI元素尺寸和布局进行适配,以期视觉协调。...(3)按字体适配 另外,iPhone的【设置】【通用】【辅助功能】中可以设置调节【更大字体】,APP也可以按字号适配: 例如适配表视图(UITableView:UIScrollView...注意限定控件元素内容区域宽度以及间距,并设置适当的LineBreakMode。表视图支持上下滑动,因此纵向上的表格行高和内容区域高度可按字号缩放。...苹果在WWDC2012 iOS6中就已提出了Auto Layout的概念,即使用约束条件来定义视图的位置和尺寸,以适应不同尺寸和分辨率的屏幕。

    1.3K50

    【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)

    UIControl 介绍 (1) UIControl 简介 UIControl 简介 :  -- 使用频率 : UIControl 控件一般不会被使用, 经常被使用的是 UIControl 的子类 UI...控件; -- UIControl 主要作用 : 定义通用接口, 为活动控件的事件机制提供实现, 发生指定的动作后, 控件会初始化 Action 方法, 回调对应的事件处理方法; -- 事件处理方法 :...UI 控件继承 UIControl 方法, 在 Interface Builder 关联到 IBAction 方法, 这个方法就是事件处理方法; (2) UIControl 方法 UIControl...Interface Builder 取消 Enable 复选框; -- 选中 : 用于标识控件已启用 或 被选中, 选中状态可以不断持续, 高亮状态只在 按下才显示; (4) UI 控件状态 UI...UIScrollView 属性简介 (1) UIScrollView 简介 UIScrollView 简介 :  -- 显示内容多 : 可滚动控件, 可以使用手指拖动控件中的内容, 在其中可以显示多个屏幕的内容

    8.4K20

    iPhone屏幕尺寸、分辨率及适配

    从分辨率的角度来看,iPhone6沿用二倍图(@2x),但需为iPhone6+提供更高的三倍图(@3x);从屏幕尺寸角度来看,需要重新对UI元素尺寸和布局进行适配,以期视觉协调。...(3)按字体适配 另外,iPhone的【设置】【通用】【辅助功能】中可以设置调节【更大字体】,APP也可以按字号适配: 例如适配表视图(UITableView:UIScrollView...注意限定控件元素内容区域宽度以及间距,并设置适当的LineBreakMode。表视图支持上下滑动,因此纵向上的表格行高和内容区域高度可按字号缩放。...打开[截图.png]文件,由于不包含 Sketch 图元对象,无法进行 measure 标注(提示:请在画板中使用该功能)。因此,第一步需要对要相对标注的各个UI元素进行对象化。...苹果在WWDC2012 iOS6中已提出了Auto Layout的概念,即使用约束条件来定义视图的位置和尺寸,以适应不同尺寸和分辨率的屏幕。

    10.4K20

    iOS 9人机界面指南(一)下篇:UI设计基础 - 腾讯ISUX

    当你应用中的UI元素的外观与功能都是用户所熟悉的,他们可以很容易地根据先前的经验来使用他们,进而更好地使用你的应用。...提示:Interface Builder让获取标准UI元素,使用外观定制API(the appearance customization APIs),获取属性,以及在你的应用里使用自定义和系统自带图标变得很简单...想要了解更多Interface Builder的内容,请参阅Xcode Overview. 不要用系统自带的按钮和图标表达其他含义。iOS提供了多种可用的按钮和图标。...如果你一定要提供用户鲜少用到的设置项,请参考App Programming Guide for iOS中的The Setting Bundle部分来了解如何在代码中定义它们。...如果用户只是偶尔才会用到设置项,那么可以将其放在独立的视图中。 如果应用内相关设置需要在系统设置中改变,帮助用户直接访问系统设置。

    2.3K21

    Apriso 开发葵花宝典之六 Client Mode 篇

    概述 Process builder是Delmia Apriso中主要的业务流程管理工具,也是DELMIA更广泛的Apriso制造运营管理解决方案的核心应用程序,Process Builder允许使用屏幕流管理设计方法和实体...它可以提高解决方案的性能,但需要更仔细的脚本编写(主要是分离全局事件处理程序)。对产品中可用的标准组件进行测试,以确保它们不会导致内存泄漏。...同时在Client Mode运行时,调试信息Debug info视图也不再显示和使用: 开发过程中的差异点 1、Process builder中的变化 带有UI元素的步骤应该转换为使用HTML布局编辑器...检查屏幕配置(是否所有变量都初始化了)或在视图操作(和子操作)中启用操作接口interface。 打开视图时显示“已经添加了具有相同键的项目”错误-。...元素的步骤 如果UI步骤包含带有UI元素的子操作,则UI步骤和子操作都应该使用HTML布局编辑器 如果一个操作包含多个UI步骤,则应该转换所有UI步骤(注意,在步骤导航视图中的一个路由路径中应该只有一个

    93970

    XcodeXcode 9 的全新功能您会喜欢的工具。内建 Interface BuilderXcode IDE

    image Interface Builder Interface Builder 设计画布完全集成在 Xcode IDE 中,可以轻松呈现完整用户界面的原型,而无需编写任何代码。...在数分钟内创建出原型,然后以图形方式将界面关联到 Xcode 编辑器中的源,设置窗口、按钮和滑块的布局,从而创建能够正常运行的 Mac、iPhone 或 iPad 用户界面。...image 内建 Interface Builder ---- 借助 Xcode 内置的 Interface Builder 编辑器,您无需编写任何代码,即可轻松设计完整的用户界面。...Interface Builder 的 Storyboard 设计器可轻松创建和设计新视图,并将它们链接在一起,形成适用于自定代码的完整用户界面。...源代码视图 通过数据点深入分析、进行排序以找出最消耗 CPU 的方法,并直接在 Instruments UI 中查看代码以查明问题所在。

    10K30

    你可能需要为你的 APP 适配 iOS 11

    导语:iOS 11 为整个生态系统的 UI 元素带来了一种更加大胆、动态的新风格。...在UIKit’s Bars中加入的新功能 WWDC通过iOS新增的文件管理App:Files开始介绍,在Files这个APP中能够看到iOS11中UIKit’s Bars的一些新特性:在浏览功能上的大标题视图...UIBarItem UIBarItem是UI tab bar item和UI bar button item的父类,要想实现上面介绍的效果,只需要为UIBarItem 设置landscapeImagePhone...需要注意的是,你的constraints需要在view内部设置,所以如果你有一个自定义的标题视图,你需要确保任何约束只依赖于标题视图及其任何子视图。当你使用自动布局,系统假设你知道你在做什么。...UIScrollView and UITableView的新特性 Scroll Views 如果有一些文本位于UI滚动视图的内部,并包含在导航控制器中,现在一般navigationContollers会传入一个

    2.3K60

    iOS 面试策略之系统框架-UIScrollView及其子类

    看看我们日常常见的 App,新闻类的今日头条,社交类的微博和微信,电商类的淘宝、腾讯,日常管理用的备忘录和图片 App 的缩放功能,都或多或少得使用了 UIScrollView 及其子类。...[1240] 当一个屏幕无法展示 App 需要展示的所有内容时,就是 UIScrollView 大展拳脚的时候:通过使用 UIScrollView,用户可以滑动或是缩放屏幕,来看单个屏幕无法展示的内容。...如何定制不同 Cell 的 UI、如何与用户交互、如何与服务器端数据同步、如何在滑动时最大限度保证界面的流畅,这些都是考察的要点,是一个 iOS 工程师必备的基本技能。...Supplementary Views 是补充视图。一般用来设置每个 Seciton 的 Header View 或者Footer View,用来标记 Section 的 View。...关键词:#渲染 #多线程 #网络传输 拿到问题第一步要分析原因,列表视图滑动很慢,肯定是 UI 或是数据上出了问题,它们可能是: 列表渲染时间较长。可能原因是某些 UI 控件比较复杂,或者图层过多。

    3.5K21

    iOS面试题-UI篇

    可以响应用户事件,Xcode6之后可以方便的通过视图调试功能查看图层之间的关系 UIView是iOS系统中界面元素的基础,所有的界面元素都继承自它。...CALayer实例,UIView有一个layerClass方法,返回主layer所使用的类,UIView的子类,可以通过重载这个方法,来让UIView使用不同的CALayer来显示,如: - (class...User Defined Runtime Attributes是一个不被看重但功能非常强大的的特性,它能够通过KVC的方式配置一些你在interface builder中不能配置的属性 当你希望在IB中作尽可能多得事情...能 因为UIScrollView的内容尺寸是根据其内部的内容来决定的,所以是可以在viewDidLoad中设置的 补充:(这仅仅是一种特殊情况) 前提,控制器B是控制器A的一个子控制器,且控制器B的内容只在控制器...A的view的部分区域中显示 假设控制器B的view中有一个UIScrollView这样一个子控件 如果此时在控制器B的viewDidLoad中设置UIScrollView的contentSize的话会导致不准确的问题

    2.6K21

    IOS开发之尺寸

    在移动端或者前端开发中,UI图通常是带标注的,指定某个控件的长宽等属性,一般UI给的是68px,72px这样的样式,但是我们在开发过程中通常又并不是完全按照上面的标注去设置值,有时候需要将这个标注除以...(3)按字体适配 另外,iPhone的【设置】【通用】【辅助功能】中可以设置调节【更大字体】,APP也可以按字号适配:     例如适配表视图(UITableView:UIScrollView),无法左右滑动...注意限定控件元素内容区域宽度以及间距,并设置适当的LineBreakMode。表视图支持上下滑动,因此纵向上的表格行高和内容区域高度可按字号缩放。    ...打开[截图.png]文件,由于不包含 Sketch 图元对象,无法进行 measure 标注(提示:请在画板中使用该功能)。因此,第一步需要对要相对标注的各个UI元素进行对象化。...苹果在WWDC2012 iOS6中已提出了Auto Layout的概念,即使用约束条件来定义视图的位置和尺寸,以适应不同尺寸和分辨率的屏幕。

    3.4K40
    领券