首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

UILabel 属性 UILabel 属性 :  (1) Text 属性 Text 属性 :  -- 属性值 : 支持 Plain 和 Attribute 属性, 一般设置为 Plain; -- 文本...Size : 设置最小的字号大小, 设置的值是字体大小; -- Tighten Letter Spacing : 勾选该复选框 会自动压缩字符串中的空白, 保证 UILabel 能容纳这些文本中的内容...控件布局中删除 [[self.labels lastObject] removeFromSuperview]; // 将 UILabel 控件集合中删除...IOS 图片规格 (1) Retina 视网膜屏 Retina 屏幕简介 :  -- 像素 : 高清晰度的视网膜屏幕, 这种屏幕的分辨率是普通非 Retina 屏幕的 2 倍; -- 市场状况 : 目前...IOS 图标设置 IOS 图片设置 : 直接文件目录将图片拖动到 Xcode 相应的设置中. -- 设置图标 : 在项目文件视图中, 点击 Images.xcassets, 选中左侧的 AppIcon

4.9K30
您找到你想要的搜索结果了吗?
是的
没有找到

用这些 iOS 技巧让你的 APP 性能更佳

Apple 的人机界面指南还建议我们不要在启动页上包含文本,因为启动页是静态的,应用程序不能将文本本地化以适应不同的语言。...我们在多任务视图中看到的应用程序快照实际上是系统在退出应用程序时截取到的屏幕截图。(即转到主屏幕或多任务屏幕)。 ?...用户退出应用程序iOS 截取的应用程序截图(查看大图) iOS 使用这些屏幕截图来给人一种假象,即应用程序仍在运行或仍在显示此特定视图,而应用程序可能已被后台终止或重新启动,但此时仍显示相同的屏幕截图...您是否曾体验过,多任务屏幕恢复应用程序后,该应用程序显示的用户界面与多任务视图中显示的快照有什么不一样? 这是因为应用程序没有实现状态恢复机制,当应用程序在后台被杀死时,显示的数据丢失。...在后台线程上修改 UIKit 对象(例如 UILabel 和 UIImageView)可能会产生意想不到的后果,例如UI实际上没有更新,发生崩溃等等。

3.2K30

iOS UI控件了解一下

UI UI(User Interface)用户界面,即用户能看到的各种各样的页面元素,iOS App 主要是由各种各样的UI控件加业务逻辑和算法构成,想要开发出一款精美的应用程序,需要熟练掌握各种各样UI...UIWindow widow是窗口,每个app都需要借助window将内容展现给用户看,在iOS中,使用UIWindow类来表示窗口,通常一个应用程序只创建一个UIWindow对象; 创建window示例代码...UIView view(视图)代表屏幕上的一个矩形区域。...UILabel 1)UILabel是什么? (1)UILabel(标签):是显示文本的控件,在App中UILabel是出现频率最高的控件。...(1)创建UILabel与创建UIView的步骤很相似。 ①开辟空间并初始化(如果本类有初始化方法,使用自己的;否则使用父类的)。 ②设置文本控制相关的属性。

2.6K20

iOS之深入解析Xcode 13正式版发布的40个新特性

:动态类型、粗体文本、按钮形状、开/关标签、增加对比度和降低透明度; 现在可以启用 UILabel 的 showsExpansionTextWhenTruncated 属性以在标签被截断时显示工具提示扩展...; XCTest 现在能够在受支持的 iOS 设备上的 UI 测试中合成指针交互; Xcode 现在为在运行测试时崩溃的进程收集代码覆盖率数据; 性能 XCTests 现在支持测量应用程序启动时的 CPU...三十、AVFoundation iPadOS 应用程序现在可以继续使用相机,同时呈现多个窗口并成为屏幕上唯一的应用程序。...四十、UIKit 对于针对 iOS 15 beta SDK 编译的应用程序,在文本视图和文本字段中键入时,按键命令不再拦截文本输入和文本编辑命令。...使用 iOS 15 beta SDK 进行编译时,几个与窗口相关的关键属性、方法和通知会更改行为。

8.7K40

iOS性能优化系列篇之“列表流畅度优化”

可在子线程中进行的任务 * 图片解码 * 文本渲染,UILabel和UITextview都是在主线程渲染的,当显示大量文本时,CPU的压力会非常。...特别是对于一些资讯类应用,这部分耗时相当,对流畅度的影响也十分明显。对此可以自定义文本控件,用TextKit或最底层的CoreText对文本异步绘制。...尽管这实现起来非常麻烦,但其带来的优势也非常,CoreText对象创建好后,能直接获取文本的宽高等信息,避免了多次计算(调整 UILabel小时算一遍、UILabel 绘制时内部再算一遍);CoreText...解码图片 iOS磁盘加载一张图片,使用UIImageVIew显示在屏幕上,需要经过以下步骤:磁盘拷贝数据到内核缓冲区、内核缓冲区复制数据到用户空间。...,在iOS8之后,UILabel使用的是CALayer作为底图层,而在iOS8开始,UILabel的底图层变成了\_UILabelLayer,绘制文本也有所改变。

2.4K30

Swift入门:怎样安装Xcode和创建Playground

它负责手机的所有基本操作,例如打电话、在屏幕上画图和运行应用程序。 macOS是苹果桌面操作系统的名字,它是iOS、tvOS甚至watchOS的技术鼻祖。...它包含按钮、文本框、导航控件等,您可以使用Swift来驾驭它。 AppKit是苹果的macOS用户界面工具包。像UIKit一样,它包含了按钮、文本框等内容,尽管它关注的是macOS而不是iOS。...你不会用它们来构建真正的应用程序,但它们对学习很有帮助。我们将在这个介绍中使用操场。 Crashes(崩溃)是指你的代码出现灾难性错误,你的应用无法恢复。...如果用户正在运行你的应用程序,它将消失,他们将回到主屏幕上。如果你在Xcode中运行,你会看到一个崩溃报告。 Taylor Swift与Swift编程语言无关。...它们也非常强大,你将在接下来的一个小时左右看到。让我们开始快速写作吧!

6.1K10

1.注册或登录页面设计:UILabel,UIButton,UITextField

学习iOS开发已经有一段时日了,之前一直没有系统的对iOS开发的相关知识进行归纳总结,导致很多知识点云里雾里在脑子里形不成iOS开发的思想,现将自己在学习过程中遇到的一些知识进行总结,希望能对iOS初学者能有一定的帮助...由于本人只是去年11月份才开始玩iOS(附上自己的学习路线,如下图),受限于能力,难免有一些不完善或不恰当的地方,希望大神们多多见谅,勿拍砖,有不足或需要完善的地方也希望小伙伴们能多多指教。 ?...作为iOS开发的入门总结的第一篇,这里以最常见的注册或登陆页面设计作为开篇,这里主要会用到UILabel,UIButton,UITextField这三个控件。...UILabel文本的行数,其属性值默认为1,用于设置UILabel只能显示一行文本。...YES时文本会自动缩小以适应文本窗口大小.默认是保持原来大小,而让长文本滚动 textFied.adjustsFontSizeToFitWidth = YES; //设置自动缩小显示的最小字体大小 text.minimumFontSize

2.3K50

深入详解iOS适配技术

最近,iPhone家族又诞生一款iPhoneSE,鉴于这款iPhoneSE的屏幕尺寸和iPhone5S的尺寸一模一样——同样是4.0英寸,广大iOS开发者可算是松了口气,不然iOS屏幕尺寸真的是越来越让人眼花缭乱...被引入,比autoresizing更加高级,旨在替代autoresizing,可以设置任何控件之间的关系)->sizeClass(iOS8出现,用于解决越来越多的屏幕尺寸的适配问题)。...三适配技术 iOS屏幕适配主要有三个技术,分别是Autoresizing、AutoLayout、SizeClass。利用纯代码计算视图的frame我们在此就不多介绍。...如果用autolayout给UILabel设置约束,只需要设置x、y、width,无需设置height,UILabel会自动包裹内容,并且随内容的多小而变化。...当然,我们也可以只给UILabel设置x、y。但必须要保证UILabel的text属性有内容,否则UILabel显示不出来(这是初学者经常犯的错误)。

8.4K70

《Motion Design for iOS》(十五)

UIKit和CoreAnimation开始 通常情况下,iOS app中屏幕上的物体都是UIView对象。它们是矩形的并且有坐标和大小来定义它们在屏幕上的位置和尺寸。...每个视图都可能伴随着文本、形状或图片绘制。...比如说,iOS app中的状态栏是一个长且瘦的视图,处于屏幕的顶端,并且状态栏目中的每个物体(时间、电池指示器、信号强度指示器等等)都是状态栏视图中的其它视图。...包括作为界面按钮的UIButton、用来显示图片的UIImageView、显示文本UILabel和显示列表的UITableView。你也可以通过绘制任何你想要的东西来完全自定义UIView。...中的帖子标题 评论数量UIButton,由一个评论气泡图和评论的数量组成 显示帖子URL的UILable UILabel中显示帖子的点值和子板 如果你不熟悉iOS用户界面开发,看看一些你喜欢的app

84940

深入剖析Auto Layout,分析iOS各版本新增特性

VFL由一个描述布局的文字字符串组成,文本会指出间隔,不等量和优先级。...调用了setNeedsLayout后不能通过frame改变视图和控件 为了让在设置了setTranslatesAutoresizingMaskIntoConstraints:NO视图里更改的frame立刻生效而执行了没有标记立刻刷新的...实践中碰到的非必现低配置机器崩溃bug分析 案例一 一个视图缺少高宽约束,在设置完了约束后执行layoutIfNeeded,然后设置宽高,这种情况在低配机器上可能会出现崩问题。...block里更新布局让Engine执行导致Ambiguous Layouts这种权重相同冲突崩溃的情况发生。...iOS7 NavigationBar,TabBar和ToolBar的translucent属性默认为YES,当前ViewController的高度是整个屏幕的高度,为了确保不被这些Bar覆盖可以在布局中使用

1.2K10

最新iOS设计规范八|3图标和图像规范(Icons and Images)

在每张图像上进行压缩设置实验,以找到可以接受的最佳值。 提供图像和图标的替代文本标签。...替代文本标签在屏幕上不可见,但是它们使VoiceOver能够以听觉方式描述屏幕上的内容,从而使视力障碍者的导航更加轻松。...如果您的设计包含任何文本,请强调与应用程序提供的实际内容相关的词。 不要包含照片,屏幕截图或界面元素。小尺寸的照片细节可能很难看清。...如果你不提供这些图标,iOS可能会缩小你的主应用程序图标显示在这些位置上。 ? 不要在“设置”图标上添加叠加层或边框。...iOS会自动为所有图标添加1像素描边,以便它们在“设置”的白色背景上看起来更友好。 用户可选的应用程序图标 对于某些APP来说,定制是一项能够唤起用户共鸣并增强用户体验的功能。

3K20

谷歌 Flutter 1.17 发布

此版本还提供了一个相当应用程序大小的改善是由于几个 补丁 是 添加 了一个的结果。...测试PR随时间合并的应用程序内存使用情况(条形越短越好) 但是,最广泛的性能改进是iOS中对Metal的支持。...该NavigationRail是伟大的,可因为它是很容易在一个交换的移动和台式机外形之间切换应用程序BottomNavigator为您的应用程序屏幕尺寸的增大。...更新的文本选择在Android上溢出 iOS上的更新文本选择溢出 当按钮的长度比没有溢出时可以显示的时间长时,文本选择菜单现在可以提高Android和iOS的保真度。...现有的文本样式名称未更改,因为这样做是一个重大的API更改,可能会影响大多数应用程序。此版本更新了TextTheme API以匹配当前的Material规范,但保留了旧名称,以使您的代码不会中断。

3.5K10

UIview

例如,UILabel对象画了一个文本字符串和UIImageView对象绘制图像。 因为视图对象是主要的应用程序与用户交互的方式,他们有许多责任。...通常情况下,子视图的可见区域的范围不剪它的父视图,但在iOS可以使用clipsToBounds属性来改变行为。...该方法的实现负责绘制视图的内容到当前图形上下文,这是系统设置的自动调用该方法之前。这将创建一个静态视图的可视化表示的内容可以显示在屏幕上。当视图的实际内容发生变化时,你有责任通知系统视图需要重绘。...Animations 几个视图属性可以更改该对象animated,改变属性创建一个动画,这种改变在很短的时间内传达给用户。...因此,你应该叫UIView类的方法代码中运行您的应用程序的主线程。这可能不是严格必需是唯一一次在创建视图对象本身,而是所有其他操作应该发生在主线程。

69310

【老孟Flutter】Flutter 2 新增的功能

这使开发人员能够防止null错误崩溃,这是应用程序崩溃的常见原因。通过将空检查合并到类型系统中,可以在开发过程中捕获这些错误,从而防止生产崩溃。...为了使Flutter桌面达到这样的质量,大小上进行了改进,确保文本编辑像在每个受支持的平台上的本机体验一样开始,包括诸如文本选择枢轴点的基本功能以及能够进行文本编辑的能力。...此外,由于Scrollbar是使用新ScrollbarTheme类的主题,因此您可以设置其样式以使其与应用程序的外观和风格相匹配。...当我们接近Flutter桌面的第一个完整的生产质量版本时,我们知道我们还有更多工作要做,包括对与本机顶级菜单集成的支持,更像各个平台的体验的文本编辑以及可访问性支持,以及常规的错误修复和性能增强。...通过此更改,我们不再犹豫建议在本机应用程序中创建Flutter引擎的多个实例。

7.8K20

最新iOS设计规范五|3界面要素:控件(Controls)

本文是iOS设计规范系列第5篇,介绍3界面要素(栏、视图、控件)中的控件(Controls)。首先让我们回顾一下iOS的3界面要素。...3界面要素 (Interface Essentials) 大多数iOS应用都是由UI Kit中的组件构建的。...标签可以包含纯文本或样式文本。如果您调整标签的样式或使用自定义字体,请确保不要牺牲易读性。最好采用动态类型,这样当用户更改设备上的文本小时,标签的可读性仍然可以很好。...例如,在打印页面上,使用步进器设置份数效果是很好的,因为用户很少对份数设置进行更改。 另外,不要用使用步进器选来择页面范围,因为这需要大量的点击。...额外的提供文本标签描述开关状态是多余的,还会使界面混乱不堪。 可以用开关来管理相关界面元素的可用性。开关通常会影响屏幕上的其他内容。例如,在“设置”中打开“飞行模式”开关会禁用其他功能/设置

8.5K30

最新iOS设计规范七|10视觉规范(Visual Design)

你可以将APP设置为动态适应各种特征,包括: 不同的设备屏幕尺寸,分辨率和色域(sRGB / P3) 不同的设备方向(纵向/横向) 拆分视图 iPad上的多任务处理模式 动态类型文本大小更改 基于区域设置启用的国际化功能...做好更改文本大小的准备。用户希望大多数APP在设置中选择不同的文本小时都能做出响应。若要适应某些文本大小的更改,你可能需要调整布局 为可交互元素提供充足的点击热区。...另外,请确保您的启动屏幕与设备的当前外观模式匹配; 避免在启动屏幕上包含文本。因为启动屏幕中的内容不会更改,所以任何显示的文本都不会被本地化。 弱化启动。...NY在图形显示环境(尺寸)中的效果与在阅读环境(文本尺寸)中的效果一样。 ? iOS 14开始,系统以可变字体格式提供San Francisco和New York字体。...使用字体粗细,大小和颜色突出显示应用程序中最重要的信息。 响应文本大小更改时优先处理内容。并非所有内容都同样重要。

7.9K30

你不知道的Mac屏幕显示图像

当视频控制器还未读取完成时,即屏幕内容刚显示一半时,GPU 将新的一帧内容提交到帧缓冲区并把两个缓冲区进行交换后,视频控制器就会把新的一帧数据的下半段显示到屏幕上,造成画面撕裂现象 ios_vsync_off.jpg...网上查到的资料可以知道,iOS 设备会始终使用双缓存,并开启垂直同步。而安卓设备直到 4.1 版本,Google 才开始引入这种机制,目前安卓系统是三缓存+垂直同步。...文本渲染 屏幕上能看到的所有文本内容控件,包括 UIWebView,在底层都是通过 CoreText 排版、绘制为 Bitmap 显示的。...常见的文本控件 (UILabel、UITextView 等),其排版和绘制都是在主线程进行的,当显示大量文本时,CPU 的压力会非常。...尽管这实现起来非常麻烦,但其带来的优势也非常,CoreText 对象创建好后,能直接获取文本的宽高等信息,避免了多次计算(调整 UILabel小时算一遍、UILabel 绘制时内部再算一遍);CoreText

2K70

iOS界面布局之三——纯代码的autoLayout及布局动画

NSLayoutAttributeTop,//上     NSLayoutAttributeBottom,//下     NSLayoutAttributeLeading,//起始边,类似左,只在某些右向左排列的语言中和...(8_0),          //下面的属性是设置的边距 意义和上面类似 对应左,右等边距     NSLayoutAttributeLeftMargin NS_ENUM_AVAILABLE_IOS(...对于这些属性,文档上有这样的解释:view1.attr1 = view2.attr2 * multiplier + constant 例如,我们创建一个label,将它的宽高固定为100*100,位置放在屏幕的中央...,我们可以使用如下的约束代码: UILabel * label = [[UILabel alloc]init];     label.numberOfLines = 0;     //使用代码布局 需要将这个属性设置为...可以发现,一个如此简单的约束方式,我们用这样的代码要写这么一坨,麻烦而且不直观。于是,apple又提供给我们下面一种方式。

2.8K30

汇编寄存器的规则

例如,如果您想将前部 NSWindow 更改为红色,但是在代码中没有对该视图的引用,又不想重新编译任何代码怎么办? 您只需创建一个断点就可以轻松调试,寄存器中获取引用并根据需要操纵该对象的实例。...SpringBoard 就是在 iOS 上控制主屏幕的程序。 一旦绑定,输入如下命令: (lldb) p/x @"Yay!...现在,给 UILabel 的 setText: 方法设置一个断点: (lldb) b -[UILabel setText:] (lldb) breakpoint command add LLDB 会吐出一些输出且进入多行编辑模式...调试的角度来看,这也很有用,因为您可以快速直观地验证 -[UILabel setText:] 在 SpringBoard 应用程序中的执行位置,并运行断点条件以查找设置特定 UILabel 文本的确切代码行...我经常发现,即使在我确实有源代码的应用程序中,使用此方法也更快,然后在应用程序中看到数千个 IBAction。 ... 但仅出于演示目的,让我们将其应用于 iOS Maps 应用程序

2.4K50
领券