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

手把手教程|在 iOS 系统开发出自己的第一个 App

很多同学都想亲自上手开发一个 iOS 移动应用,正好 FinClip iOS工程师梳理了一篇教程,感觉对于大家很有帮助,发上来和大家一起分享下。...个图标可以看到更多的页签); 中间是我们的编辑区域(Editor),根据左侧点击的不同文件,中间会展示代码、界面、项目设置、素材等等; 右侧会有一些 Inspector 和 Library,这次暂时用不到...; [self.view addSubview: label]; 在这里我们简单解释下这五行代码是干什么的: //这一句创建了一个静态文本控件,未指定内容、大小和位置 UILabel *label =...= @"hello world"; //让静态文本的大小自适应内容 [label sizeToFit]; //让静态文本居于整个视图的中央 label.center = self.view.center...; //将静态文本添加到主视图中 [self.view addSubview: label]; 0X04 运行程序 第一步,回到 Xcode 界面中,选中苹果机型模拟器,点击左侧的播放按钮 第二步,

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

如何在iOS系统写出第一行 Hello World?

地球上最流行的移动操作系统,非苹果公司的 iOS 与谷歌公司的 Android 系统莫属了,那如何写出自己的第一个 App,并且能够跑在 iOS 与 Android 系统上呢?...今天FinClip的工程师给大家首先带来iOS的教程,快来看看!...个图标可以看到更多的页签); 中间是我们的编辑区域(Editor),根据左侧点击的不同文件,中间会展示代码、界面、项目设置、素材等等; 右侧会有一些 Inspector 和 Library,这次暂时用不到...= @"hello world"; //让静态文本的大小自适应内容 [label sizeToFit]; //让静态文本居于整个视图的中央 label.center = self.view.center...; //将静态文本添加到主视图中 [self.view addSubview: label]; 0X04 运行程序 第一步,回到 Xcode 界面中,选中苹果机型模拟器,点击左侧的播放按钮 我们在图中选择的是

1.1K20

iOS UI控件了解一下

iOS中用UIView来表示视图,App中能看到的元素,都是UIView及其子类,通俗的说各种UI控件都属于view,不同的控件代表不同种类的view。iOS中所有能看到的内容都是view或其子类。...UILabel 1)UILabel是什么? (1)UILabel(标签):是显示文本的控件,在App中UILabel是出现频率最高的控件。...(2)UILabel是UIView子类,作为子类一般是为了扩充父类的功能,UILabel扩展了文字显示的功能,UILabel是能显示文字的视图。 2)如何使用UILabel?...(2)视图创建代码: UILabel *userNameLabel = [[UILabel alloc]initWithFrame:CGRectMake(30, 100, 100, 30)];...在App中UITextField出现频率也比较高; (2)iOS系统借助虚拟键盘实现输入,当点击输入框,系统会自动调出键盘,方便 你进一步操作。

2.6K20

浅谈 iOS AutoLayout 中 Label 的抗拉伸和抗压缩

Resistance 的方法有: - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis NS_AVAILABLE_IOS...setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis NS_AVAILABLE_IOS...使用场景: 当一个视图上有多个 intrinsic content size 的子控件,子视图的总和,不够填充父视图区域时,此属性可以控制优先拉伸哪个视图内容。...使用场景: 当一个视图上有多个 intrinsic content size 的子控件,并且子控件可能会超出父视图的区域时,此属性可控制哪些视图被内容被优先压缩,使其不超出父视图区域。...Content Hugging Priority 在 View 中添加了一个 UILabel: - (void)demo2 { UILabel *bluelabel = [[UILabel

5.1K31

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

一. iOS 项目简介 1. iOS 文件简介 创建一个 HelloWorld 项目, 在这个 IOS 项目中有四个目录 : 如下图; -- HelloWorldTests 目录 : 单元测试相关的类和资源...Drawing 属性 :  -- Opaque : 设置控件是否为 不透明, 如果设置为不透明, 不管该控件的透明度是否是半透明, 该控件后的其它控件将不会被绘制; -- Hidden : 隐藏该控件, 用户看不到本控件...IOS 的 MVC 模式 - M(Model 模型) V (View 视图) C (Controller 控制器) IOS MVC 模式 :  -- Model 模型 : Model 一般式普通的 Objective...中配置视图之间的切换关系; -- 图示 :  (3) 工具图标 界面设计文件的 工具图标 :  -- 缩小 : 多个视图控制器在同一个窗口, 缩小界面可以同时查看所有的 视图控制器; -- 恢复 :...IOS 图标设置 IOS 图片设置 : 直接从文件目录将图片拖动到 Xcode 相应的设置中. -- 设置图标 : 在项目文件视图中, 点击 Images.xcassets, 选中左侧的 AppIcon

4.9K30

《Motion Design for iOS》(十五)

比如说,iOS app中的状态栏是一个长且瘦的视图,处于屏幕的顶端,并且状态栏目中的每个物体(时间、电池指示器、信号强度指示器等等)都是状态栏视图中的其它视图。...包括作为界面按钮的UIButton、用来显示图片的UIImageView、显示文本的UILabel和显示列表的UITableView。你也可以通过绘制任何你想要的东西来完全自定义UIView。...视图,用来包含UITableView中一行的元素 UILabel中的帖子标题 评论数量UIButton,由一个评论气泡图和评论的数量组成 显示帖子URL的UILable UILabel中显示帖子的点值和子板...如果你不熟悉iOS用户界面开发,看看一些你喜欢的app,看能不能找出界面中所有的视图,以此作为分解你自己设计的练习,这样你就可以学习在代码中构建它们。...查看完整合集:https://github.com/Cloudox/Motion-Design-for-iOS 查看作者首页

84740

MyLayout&TangramKit 的重大升级!

在UIView类中提供了一个可供重载的方法: - (CGSize)intrinsicContentSize NS_AVAILABLE_IOS(6_0); 如果某类视图有自己的固有内容尺寸则需要重载这个方法的实现...当一个视图有自己的固有内容尺寸时,就不需要再为视图设置宽度或者高度约束。这也就是为什么一般情况下不对UILabel视图设置宽度和高度约束时系统也能正常完成布局。...//本文对AutoLayout进行约束设置都是用iOS9以后所提供的进行约束设置的简易方法。...因此如果想使用布局视图的尺寸自适应功能,那么在将布局视图的尺寸设置为wrap后,就可以像使用UILabel那样不用去设置布局视图的宽度约束和高度约束了。比如有两个兄弟视图A,B。...您可以在这个DEMO中看到如何实现父视图的尺寸和兄弟视图的尺寸和位置如何依赖尺寸自适应的布局视图的代码。

2K20

iOS坐标系探究

前言 app在渲染视图时,需要在坐标系中指定绘制区域。 这个概念看似乎简单,事实并非如此。...从这个不同的现象开始,我们来理解iOS的坐标系。 坐标系概念 在iOS中绘制图形必须在一个二维的坐标系中进行,但在iOS系统中存在多个坐标系,常需要处理一些坐标系的转换。...iOS中,每个图形上下文都会有三种坐标: 1、绘制坐标系(也叫用户坐标系),我们平时绘制所用的坐标系; 2、视图(view)坐标系,固定左上角为原点(0,0)的view坐标系; 3、物理坐标系,物理屏幕中的坐标系...UILabel *testLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 20, 100, 28)]; 这是因为frame是在上一层view中坐标的偏移...附录 Drawing and Printing Guide for iOS Quartz 2D Programming Guide

2.8K30

iOS | 动态获取字符串宽高并添加约束

iOS 实际编码过程中,我们可能会需要通过代码动态的向某个 View 视图中添加 UILabel, 此时,我们必须手动的为这些 UILabel 对象添加约束条件,否则,这些 UILabel 将会因为没有约束条件而无法显示...只有获取到 UILabel 中填充的字符串所占据的宽高信息信息之后,才能为其添加具体的约束,所以—— 通过代码获取字符串所占视图宽度: /* * 获取字符串边框 */ func getStrBoundRect...with: constrainedSize, options: option, attributes:attr , context: nil) return rect } 当我们获取到字符串所占视图区域...self.spendCouponView.bottomAnchor, constant: 0).isActive=true return rightBound } 上述两个函数的调用示例如下: //添加满减券子视图...var preRightBound=CGFloat(0) for i in 0 ..< 4{ let spendCouponChildView=UILabel

71610

Ios常用第三方框架(一)

使用DEMO 视图居中显示、子视图含边距、视图等距离摆放、计算ScrollView的contentsize。...TQRichTextView - 用于做富文本视图控件显示,用于即时通讯的表情显示,以及资源评论的富文本显示。...TTTAttributedLabel - 一个文字视图开源组件,是UILabel的替代元件,可以以简单的方式展现渲染的属性字符串。...用TTTAttributedLabel创建变化丰富的UILabel - 网易新闻iOS版使用。 MLEmojiLabel - 自动识别网址、号码、邮箱、@、#话题#和表情的label。...FXLabel - FXLabel是一个功能强大使用简单的类库,通过提供一个子类改进了标准的UILabel组件,为字体增加了阴影、内阴影和渐变色等,可以被用在任何标准的UILabel中。

5.4K31

Swift:静态工厂方法

swift: 静态工厂方法 视图 Views 视图是我们在编写UI代码时必须设置的最常见对象之一。...iOS上的UIKit和Mac上的AppKit都为我们提供了创建具有原生外观的UI所需的所有基本核心构建块,但是我们经常需要自定义这些外观以适合我们的设计并为其定义布局。...同样,这是许多开发人员选择子类化并创建内置视图类的自定义变体的地方,就像这里的UILabel一样,我们将使用它来渲染标题: class TitleLabel: UILabel { override...虽然我们可能无法完全摆脱视图控制器(或与此相关的视图)的子类化,但是某些类型的视图控制器可以从工厂方法中受益。...尤其是在使用子视图控制器时,我们通常最终会得到一组视图控制器,它们只能在其中呈现特定状态,而不是在其中包含大量逻辑。对于那些视图控制器,将其设置移动到静态工厂API可能是一个很好的解决方案。

2.4K10

声明式 UIKit 在有赞美业的实践

iOS 的布局方式里,除了极少数或者对性能要求极高的地方会用 frame 进行直接计算赋值外,大多数情况下是使用到 UIKit 提供的 Autolayout 进行布局。...由于提供的是约束,强调视图“之间”的相互关系,意味着关系一旦定下来,修改约束(包括添加和移除视图),必定会影响到另一个视图的引用,从而导致代码移植性不高。...在 iOS 9 之后,UIKit 提供了 UIStackView 就是通过类似 FlexBox 的形式,接管视图之间的布局规则,减少对视图的的操作,来达到快速布局的效果。...我们会发现,跨平台以及原生端包括 iOS 和安卓,都会对 FlexBox 布局多少有点涉足,在现在大前端的开发趋势下,统一的布局方式和思路显得尤为重要。...SwiftUI 由于 iOS 13 的限制,以及生态的不完善,也还没达到我们在项目中能直接上手使用的程度,前期版本的迭代也会因为其不稳定等因素可能会出现 API 的大改。

1.4K30

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

我们在多任务视图中看到的应用程序快照实际上是系统在退出应用程序时截取到的屏幕截图。(即转到主屏幕或多任务屏幕)。 ?...用户退出应用程序时 iOS 截取的应用程序截图(查看大图) iOS 使用这些屏幕截图来给人一种假象,即应用程序仍在运行或仍在显示此特定视图,而应用程序可能已被后台终止或重新启动,但此时仍显示相同的屏幕截图...如果视图具有透明度(即 alpha 低于 1.0),那么 iOS 将需要做些额外的工作来混合视图层次结构中不同的视图层以计算出哪些内容需要展示。...红色表示视图不是不透明的,并且其显示的是在其后面混合的图层。绿色表示视图不透明且未进行混合。 ? 尽可能为 UILabel 指定非透明背景颜色以减少颜色混合图层。...在后台线程上修改 UIKit 对象(例如 UILabel 和 UIImageView)可能会产生意想不到的后果,例如UI实际上没有更新,发生崩溃等等。

3.2K30

手把手第一篇:写出第一行 Hello World

,并且能够跑在 iOS 与 Android 系统上呢?...iOS 篇 开发一个 iOS 移动应用大致需要以下 4 步: 工具准备 新建项目 认识 Xcode 添加代码 运行程序 0X00 工具准备 工欲善其事必先利其器,一个 Mac 设备必不可少( iMac、...个图标可以看到更多的页签); 中间是我们的编辑区域(Editor),根据左侧点击的不同文件,中间会展示代码、界面、项目设置、素材等等; 右侧会有一些 Inspector 和 Library,这次暂时用不到...= @"hello world"; //让静态文本的大小自适应内容 [label sizeToFit]; //让静态文本居于整个视图的中央 label.center = self.view.center...; //将静态文本添加到主视图中 [self.view addSubview: label]; 0X04 运行程序 第一步,回到 Xcode 界面中,选中苹果机型模拟器,点击左侧的播放按钮 [image

1.1K10

IOS开发基础系列】Navigation页面导航专题

setFrame: rootVC.view.frame]; [addVC.view setBackgroundColor: [UIColor whiteColor]]; 2.3.4 手动移除带导航条的子VC 视图...导航条设置为半透明         将NavigationBar设置透明(仅将指定视图控制器进行透明处理),步骤如下:     1.在视图控制器的头文件中实现UINavigationControllerDelegate...willShowViewController: (UIViewController*) viewController animated: (BOOL)animated{     //如果进入的是当前视图控制器...设置为半透明        self.navigationController.navigationBar.translucent = YES;      } else {        //进入其他视图控制器...//自定义标题视图 UILabel *titleLabel = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 200, 44)]; titleLabel.backgroundColor

35220

小Q-百度定位及递增递减的Label数字未完待续,持续更新中

初始化百度地图并开始定位 [[GD_BaiduMapLocationObject locationObject] installBasiduMapKit]; 这时候重点来了,也是比较容易忽略的地方 自iOS8...NSLocationWhenInUseUsageDescription ,允许在前台使用时获取GPS的描述 NSLocationAlwaysUsageDescription ,允许永久使用GPS的描述 加这个切记,不加的话拿不到位置并打包发到...iTunes的时候会显示版本无效(四天前的文章有讲到过 iOS APP版本构建版本无效) 百度定位结束 递增递减的Label数字 这个效果大家在上面的gif中看到了,可能gif是个帧动画,感觉这个很不流畅...property: toValue 数字终点值 * property: duration 从开始时间到结束 */ - (void)installScrollLabel:(UILabel...reserved. // #import "GDScrollLabel.h" @interface GDScrollLabel () @property (nonatomic , strong)UILabel

92450
领券