IOS开发入门之五——storyboard的使用(上)

2023-05-16

需要iOS开发视频资料可以加我微信: 1914532832  验证信息请注明:IOS开发

 上节介绍了纯代码开发,就是所有页面全部用代码来写,纯代码开发缺点就是比较慢的,而且很不直观,需要在App运行后才能看到页面效果。这节介绍重点一下IOS推荐的开发方式:storyboard,即故事板。使用storyboard开发的优点就是比较直观,页面效果以及页面的跳转关系一目了然。

一、界面简介

    打开Xcode软件,创建一个"Single View App"项目,项目命名为"StoryboardDemo",不清楚怎么创建,请参看"IOS开发入门之二——第一个App",点击左侧目录里的Main.storyboard文件,可以看到storyboard的编辑界面,分为三个大的区域(红色方框),分别介绍一下:

1.左侧这块:显示App页面的层次结构,就象页面的的一个目录,我们可以看到页面上的所有UI视图以及他们的层级关系,比如storyboard里面多少个页面,每个都包含哪些图片和文字,这些图片和文字是谁包含谁等等信息。

2.中间这块:不用介绍了吧,用来展示页面设计的最终效果,也就是页面最终长什么样子,在这里可以看到。

3.右侧这块:是附属面板,它可分为上下两部分,上面部分主要用于UI视图参数的设置,比如设置按钮的颜色、字体、尺寸等;下面部分主要放置所有的UI视图,比如按钮、文字、图片等视图。

二、添加视图

    接下来我们来添加一个Label视图,Label视图是用来显示一段文字。

1. 首先点击右下角红色方框1,输入"Label"这几个字,这样系统会自动为我们搜索到Label这个视图。

2.然后用鼠标左键按住Label这个视图,拖动到中间的空白页面上然后松开鼠标左键,如下图中的箭头所示。注意:要按住鼠标左键拖动,中途不要松开,拖到目标位置后再松开。这时我们已经在页面中添加了一个Label视图。

    这时你可以点击编译运行App后,在手机模拟器就可以看到App页面中间多了"Label"这行字

    看过上一节"IOS开发入门之四——开始纯代码写UI"的人应该明白,UI开发说白了其实就是两点:1.视图长什么样子:比如是什么颜色,是方的还是圆的;2.视图应该放在页面的什么位置。

三、视图属性

    接着上面我们开始修改Label的一些属性,点击左侧红色方框2位置,选中这个Label这个视图,然后再点击右上角红色方框3,打开属性面板,在红色方框4这个位置可以修改要显示的文字内容,接着在红色方框5点击最右侧的蓝色上下箭头在弹出的框中选择红色颜色,最后将红色方框6的两个数值修改为-3,这时就可以看到,文字产生了重影效果,影子是红色。其他还有很多属性,在此不一一做介绍了。

 

小技巧 1:  如果之前因为修改了Label的文字内容,导致文字显示不全,如下图所示。可以先点击上图(注意是上图)红色方框2,这样就选中了这个控件,这时控件周围会出现一个周围有很多小框的方框(如下图),然后将鼠标放到下图箭头的起点位置,等鼠标图片变成一个类似X的图片时,就可以按下鼠标然后沿着下图红色箭头方向拖拉,这时Label控件就会被拉大,拉到足够大之后再放开鼠标。

 

 

小技巧2:  要改变视图位置可以将鼠标放在这个视图上,等鼠标图片会变成一只手的样子,然后就可以按住鼠标左键拖动这个视图到你想要的位置。

四、视图约束

1. 添加约束

 接下来我们来关心一下视图的位置问题。其实上面的视图在页面上已经占有一个位置了,不然我们怎么知道它在哪里。但是我们还要给他添加一些约束,所谓约束就是对视图的位置添加一些限制性条件。上面视图明明已经有位置了,我们为什么还要添加约束呢?

    当你把视图拖到页面上后,系统会根据你所放的位置生成一个坐标比如x=168,y=511,如下图所示(我们可以通过点击下图右上角的那个类似尺子的图标来查看视图的尺寸和约束情况)。x=168是指视图离页面的左边距离是168,同样y=511是指视图离页面上边的距离是511。这其实就是一种约束,只不过这是系统帮我们设置的默认约束,也就是说在任何手机上,这个视图距离屏幕的左边距离一定是168,距离上边的距离一定是511。

    这种固定位置明显不能满足不同尺寸手机屏幕的要求,假如有个手机屏幕的宽度是350*560, 那么它显示起来就类似下图,但是如果来一个手机屏幕尺寸是700*1120,也就是前者的两倍大小,明显下面的视图就跑到手机屏幕中间的位置,这不是我们想要,我们的最初目的可能是想让它处在屏幕的右下角。因此,这个系统帮我们生成的约束在大多数情况下是满足不了我们的要求的。这时就要重新设置我们自己的约束,让视图处在我们想要的位置。

    下面我们要让视图处于这样一种位置:在页面中水平居中,并且距离页面的上边的距离固定为50,类似一篇文章的标题,要怎么设置这个约束呢?这需要用到两类约束:

1.第一类就是上面那样,设置到某个参照物的距离以及视图本身的尺寸。

2.第二类是对齐约束,比如视图的左边与某个参照物的左边对齐,或者视图的中心点与参照物的中心点对齐等。

    先设置水平居中,要用到第二类约束,如下图所示,点击红色方框1弹出对齐约束页面,在红色方框2处打勾,这个选项就是设置水平居中的,然后点击红色方框3确认添加一个约束。如果点击红色方框1后,弹出框上的选项都是灰色的不能设置,可能是你没有先选中视图。约束操作要先选中一个视图,不然系统怎么知道要给谁添加约束。

设置后的效果如下图,可以看到已经水平居中了。

 

 

    接着,我们再设置到页面上边的距离为50,用到第一类约束。如下图所示点击红色方框1的图标,弹出添加新约束对话框,然后在红色方框2处的蓝色方框里输入50,输入后我们可以看到蓝色方框底下的那个象"工"字的红色线变成实线,其他相邻的几个没有设置的依然还是红色虚线,这表示已经设置了这个约束,最后还要点击一下红色方框3,确认设置这个约束。至于其他的选项用猜应该也能猜个大概,在这里就不做介绍了。

 

设置后的效果如下图所示:

 

    这样设置后,不论屏幕是大是小,这个视图(标题)就始终处于屏幕的水平中央,并且距离上边距为50。就不会出现说标题跑到屏幕中央这种尴尬的事情。

2. 修改约束

    如果不小心设置了不想要的约束,要怎么清除掉呢?如下图所示,先点击红色方框1,弹出对话框。如果点击红色方框2,代表要清除掉当前选中视图的所有约束。如果点击红色方框3,代表要清除当前页面上所有视图的所有约束,所以红色方框3点击操作要慎重。

 

红色

    那要怎么修改已经添加的约束呢?如下图所示,点击右上角那个类似尺子的图标,打开视图尺寸设置面板,这个面板很长,有一部分被看不见,滚动条要往下拉,可以看到如图中两个大的红色方框就是我们上面刚设置的两个约束。我们要将第二个约束的值改为距离上边10,双击(注意是双击)下面那个红色方框。

 

    如下图所示,这时尺寸面板切换到了约束编辑界面,红色方框中的值就是我们要修改的,将其设置为10,然后键盘回车。下图左侧页面可以看到标题视图距离页面上边距变小了。

 

有兴趣的读者可以,继续阅读本系列的下一篇:

IOS开发入门之六——storyboard的使用(中)

需要iOS开发视频资料可以加我微信: 1914532832  验证信息请注明:IOS开发

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IOS开发入门之五——storyboard的使用(上) 的相关文章

随机推荐

  • MySQL批量导入Excel、txt数据

    我想Excel是当今最大众化的批量数据管理软件了吧 xff0c 所以我们会经常涉及到将Excel中数据导入到MySQL中的工作 网上有一些关于直接将Excel导入MySQL的教程 xff0c 不知道是我安装的office不对还是MySQL不
  • Android ADT安装技巧其常见错误处理

    按照一般教程书籍的安装方法 xff0c 无外乎是 xff1a 首先打开eclipse xff0c 然后依次单击Help Install New Software xff0c 如下图所示 xff1a 单击后弹出的Install界面中的 Add
  • ubuntu 第一次SU密码

    Ubuntu刚安装后 xff0c 不能在terminal中运行su命令 xff0c 因为root没有默认密码 xff0c 需要手动设定 以安装ubuntu时输入的用户名登陆 xff0c 该用户在admin组中 xff0c 有权限给root设
  • Android开发——自动连接指定SSID的wifi热点(不加密/加密)

    最近在做一个项目 xff0c 其中涉及到一块 自动连接已存在的wifi热点 的功能 xff0c 在网上查阅了大量资料 xff0c 五花八门 xff0c 但其中一些说的很简单 xff0c 即不能实现傻瓜式的拿来就用 xff0c 有些说的很详细
  • iOS开发:开发者账号申请后真机调试详细步骤

    前提 xff1a 已经成功申请了iOS开发者账号 环境 xff1a xcode 4 6 1 xff1b iOS 6 1 2 1 授权设备 xff1a 进入Apple Developer会员中心 xff0c 点击图中的iOS Provisio
  • Python个人学习记录

    Python个人学习记录 一 输出 xff08 print 函数 xff09 1 控制台输出2 将内容输出到文件中3 不进行换行输出 xff08 输出内容在一行当中 xff09 二 转义字符1 普通转义字符2 特殊用途的字符 xff08 反
  • 解决ERROR 1064 (42000): You have an error in your SQL syntax..

    在MySQL命令行使用sql语句进行建表或者查询表时 xff0c MySQL 报错 例如 xff1a 在下面的数据库中查看like表 当我们输入sql语句进行查询时 xff0c 发现会报错 其实这个问题是语法上的错误 xff0c 在MySQ
  • Onedrive不限速还有5T空间,且行且珍惜

    由于百度网盘的限速 xff0c 不得已开始捣鼓微软的OneDrive网盘 相对于百度网盘 xff0c Onedrive最大的优势是不限速 xff0c 速度也是难得的友好 相对于百度网盘 xff0c Onedrive最大的劣势是空间大小 xf
  • iOS图片的填充方式UIImageView(contentMode)有什么不同

    UIViewContentModeScaleAspectFit 这个图片都会在view里面显示 xff0c 并且比例不变 这就是说 如果图片和view的比例不一样 就会有留白如下图1 图1 UIViewContentModeScaleAsp
  • windows 下包管理工具vcpkg安装

    主要参考博文 xff1a vcpkg安装及使用 我叫电池的博客 CSDN博客 vcpkg安装 由于需要在离线环境下面搭建开发环境 xff0c 所有的包只能离线安装了 xff0c 包括这个管理工具vcpkg的安装 xff0c 也必须是离线安装
  • 【Python】如何发布编写好的Python应用程序之Python Release for Windows(附踩坑经验)

    运筹优化博士 xff0c 只做原创博文 更多关于运筹学 xff0c 优化理论 xff0c 数据科学领域的内容 xff0c 欢迎关注我的知乎账号 xff1a https www zhihu com people wen yu zhi 37 最
  • ubuntu 下更改docker的默认位置

    首先查看docker位置 xff1a docker info 原先的位置默认应该都在 var lib docker 停止docker服务 systemctl stop docker 查看量大容的位置 xff0c 然后在上面创建转移目录文件夹
  • 编译 NDK 编译 freerdp 转载:测试成功

    最近著名的开源rdp客户端freerdp的android版本终于出来了 xff0c 经过9个月的跳票终于release了第一版 下面简单说说编译的过程 这个是需要用到cmake来编译 xff0c 所以系统推荐用ubuntu或者mac xff
  • 1.VMWare-Ubuntu-内存不足处理办法 2.VMWare-Ubuntu-扩展内存后黑屏解决办法

    问题描述 xff1a 1 VMWare Ubuntu 内存不足 2 VMWare Ubuntu 扩展内存后黑屏 解决办法 xff1a 详情参考文章https www cnblogs com codingdog p 14879313 html
  • Linux目录解释

    bin bin是binary 二进制 的缩写 这个目录是对UNIX系统习惯的沿袭 xff0c 存放着使用者最经常使用的命令 例如 xff1a cp ls cat boot 这里存放的是启动LINUX时使用的一些核心文件 dev dev是de
  • 数据库的插入更新语句

    目的 xff1a 实现在数据库插入数据的时候 xff0c 只对重复的数据进行更新 xff1b 实现方式 xff1a 1 在表中建立一个唯一索引 xff0c 主键 xff08 已有唯一索引的特性 xff09 2 在插入数据 sql语句 xff
  • Linux安装Yapi

    需求 xff1a 按公司需求 xff0c 前后端开发 xff0c 由于过往开发都是后端先进行 xff0c 前端须等后端开发玩接口 xff0c 依照开发文档才能进行接口调试 xff0c 大大增加了项目时间 xff0c 故采用YAPI来作为解决
  • mysql8.0 安装 修改密码 允许远程连接

    mysql从5 7一下子跳跃到了8 0 xff0c 其中的改变还是很大 xff0c 有点这里就不说了 xff0c 小伙伴们自己去百度了解一下 xff0c 这里重点说一下 xff0c 安装的事 1 解压后 xff0c 文件下下面是没有my i
  • IOS开发入门之二——第一个App

    如果你对怎么开始IOS开发都不懂的话 xff0c 请看点下面的链接 xff0c 先学习关于IOS开发环境的配置以及Swift语言入门 xff1a IOS开发入门之一 Swift语言基础 本章将教大家创建一个标准的苹果手机应用并让它在手机模拟
  • IOS开发入门之五——storyboard的使用(上)

    需要iOS开发视频资料可以加我微信 1914532832 验证信息请注明 xff1a IOS开发 上节介绍了纯代码开发 xff0c 就是所有页面全部用代码来写 xff0c 纯代码开发缺点就是比较慢的 xff0c 而且很不直观 xff0c 需