【AutoLayout案例04-游戏图片-按钮适配 Objective-C语言】
一、好,我们再看一个案例,

刚才,这个案例,

这么一个案例

这个案例,是什么意思呢,

这里给大家做一个3.5英寸、4.0英寸的屏幕适配,
因为我们这里图片,只有一个,就是4英寸的这么一个图片
什么意思呢,要求我们在3.5英寸的屏幕、和4英寸的屏幕的时候,都能正常显示这个图片,
那么,先给大家做个什么呢,没有屏幕适配的时候,是什么样子
再让大家看一下,这个屏幕适配以后,的这么一个样子,

下面,我把这个思路,再给大家捋一下
因为我们只做3.5英寸、4英寸的适配吗,所以说,这里,
1)先把控制器改成4英寸,因为我们图片,没有更大的图片了
2)再一个,就是我们设置适配的一个大致思路,首先,设置图片框水平居中,垂直居中
3)设置图片距离左右是0,高度为568
4)修改距离左右为-16(或者把Constraint勾去掉,左右依然设置为0)
5)适配第一个按钮(设置按钮的大小,距离左边5,垂直居中对齐,然后修改按钮的垂直对齐时的constant值)。
6)依次适配每个按钮,两个按钮在同一条水平线上是要设置垂直居中


新建一个项目

Name:007游戏首页图片屏幕适配

看看

先把控制器改成4英寸的
然后,在控制器里面放一个图片框

让这个图片框填满整个屏幕

是这个

home_bg
好,拷过来

把这个拷过来以后,接下来,我们看一下,在我们这个控制器里面

在这个图片框中,设置一下图片,是那个home_bg

在当前,4英寸的这个屏幕上,我们把它改成iPhone5S

在4英寸屏幕下,因为这个图片本身,就是4英寸的大小
然后呢,在我们这个4英寸的屏幕下,是不是显示是刚刚好
这里显示,是不是刚刚好
然后,再把它改成我们的3.5英寸,给大家看一下
然后呢,我把这里的启动,改成我们的iPhone4S

command + R

看到啥了
是不是下面这边,短了不少
上面这边,是不是还是留着,长这么多啊
看到了吗

下边短了不少,上边是不是留出来不少空白啊
你说,这样不行吗
这样不行吧
这样是不是,我们下边这些按钮,就不全了吧
按钮都不全了
我们希望的效果,是什么效果呢
我们希望这里在iPhone5S、iPhone4S、在4英寸、3.5英寸下面
运行效果是什么效果呢,我们希望是这样的效果
如果说,我们现在是4英寸的主机

这时候,会把我们整个这个图片,都显示出来

如果是3.5英寸的屏幕,这个时候,怎么显示呢,
只显示中间这部分,就够了,

这个美工做图,其实它还是挺聪明的

上边是不是一堆砖头
下边是不是一堆地板
这堆地板,是不是要和不要,没啥关系
你在4英寸的屏幕上,你把它整个儿都显示出来,是不是也挺好的
你到3.5英寸下的时候,你把这个上面砖头去几块儿,下边这个地板少几块儿,是不是只显示中间这部分,也可以吧
这也是一种思路吗,这也是一种思路
所以,我们就用这种思路,做一下这个屏幕适配
我们怎么做呢,
二、屏幕适配
1.知道我现在在3.5英寸下、4英寸下、屏幕适配的思路吧
1)在4英寸下,显示整个图片
2)在3.5英寸下,只显示中间那一部分,
把上面的砖头,去掉,不要它了
把下面的地板,也去掉,不要它了

你看看,在3.5英寸的屏幕下,是如何显示的

在3.5英寸下,砖头一堆,下面的按钮,是不是少了
这样你就不合适了吧
我把上边的砖头去了,把下边的地板去一部分,中间的按钮,正常显示
我要的是这样的效果
2.首先,选中这个图片框

让这个图片框,是不是永远是居中显示啊
无论手机怎么做,是不是它永远是居中显示啊
好,我们选中这个图片框,设置它的约束

让它,水平居中、垂直居中

然后,把它勾上,点增加

设完水平居中、垂直居中以后,这里把它更新一下frame

这里的警告,给它解决一下

点击Fix Misplacement
解决完毕以后

解决完毕以后,看到啥了,是不是由于这个图片本身是比较大的,直接是不是放到很大很大了
这样做,肯定不是我们想要的吧
我们要的是这个图片,距离手机屏幕两边是0,这个图片,别超过手机宽度,
这个图片,距离手机两边,是不是都是0啊
那我们就设置一下,注意看
再选中这张图片

然后,让它设置距离左右的距离

先把这个勾去掉
距离左边、右边的竖线选上

把这个下拉菜单打开,看一下,选上View
数字改成0
相关文章:
【AutoLayout案例04-游戏图片-按钮适配 Objective-C语言】
一、好,我们再看一个案例, 刚才,这个案例, 这么一个案例 这个案例,是什么意思呢, 这里给大家做一个3.5英寸、4.0英寸的屏幕适配, 因为我们这里图片,只有一个,就是4英寸的这么一个图片 什么意思呢,要求我们在3.5英寸的屏幕、和4英寸的屏幕的时候,都能正常显示这个图…...
Spring Boot业务系统如何实现海量数据高效实时搜索
1.概述 我们都知道随着业务系统的发展和使用,数据库存储的业务数据量会越来越大,逐渐成为了业务系统的瓶颈。在阿里巴巴开发手册中也建议:单表行数超过500万行或者单表容量超过2GB才推荐进行分库分表,如果预计三年后数据量根本达…...
面向对象的设计原则
设计模式 Python 设计模式:对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。每一个设计模式系统地命名、解释和评价了面向对象系统中一个重要的和重复出现的设计 面向对象 三大特性:封装、继承、多态 …...
前端需要理解的工程化知识
1 Git 1.1 Git 常见工作流程 Git 有4个区域:工作区(workspace)、index(暂存区)、repository(本地仓库)和remote(远程仓库),而工作区就是指对文件发生更改的地方ÿ…...
【Terraform学习】使用 Terraform创建DynamoDB添加项目(Terraform-AWS最佳实战学习)
本站以分享各种运维经验和运维所需要的技能为主 《python》:python零基础入门学习 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8》暂未更新 《docker学习》暂未更新 《ceph学习》ceph日常问题解…...
基于单片机教室人数实时检测系统
一、系统方案 主程序中main函数主要是引脚的初始化,给单片机引脚初始化,初始化LCD1602,初始化红外对管,通过对LCD1602赋值,采集进入教室的人数,显示在LCD1602上面进出人数我们采用按键的形式,检…...
alibabacloud的简单使用,nacos配置中心+服务中心。作者直接给自己写的源码
文章目录 依赖关键主要的程序启动文件配置文件bootstrap.yml依赖文件nacos配置中心上的文件截图 启动成功截图参考文档 依赖关键 SpringBoot版本和com.alibaba.cloud版本需要对应,不然会程序会启动失败作者使用的版本 SpringBoot: 2.1.6.RELEASE alibabacloud: 2.…...
Python爬虫:一个爬取豆瓣电影人像的小案例
从谷歌浏览器的开发工具进入 选择图片右键点击检查 
1.打开STM32CubeMX选择好对应的芯片,打开IWDG 2.打开串口1进行调试 3.配置好时钟 4.写好项目名称,选好开发环境,最后获取代码。 5.打开工程,点击魔术棒,勾选Use Micro LIB 6.修改main.c #include "main.h"…...
39.RESTful案例
RESTful案例 准备环境 Employee.java public class Employee {private Integer id;private String lastName;private String email;//1 male, 0 femaleprivate Integer gender; } //省略get、set和构造方法EmployeeDao.java package com.atguigu.SpringMVC.dao;import com.…...
Power Pivot 实现数据建模
一、简介 Excel中的透视表适合小规模数据;如果想在稍微大一些的数据中进行高性能透视表分析,就要使用Power Pivot;再大一些数据,可能就需要大数据分析服务来进行分析。 Power Pivot,可以让没有技术背景的企业业务人员…...
Ansible自动化运维之playbooks剧本
文章目录 一.playbooks介绍1.playbooks简述2.playbooks剧本格式3.playbooks组成部分4.运行playbooks及检测文件配置 二.模块实战实例1.playbooks模块实战实例2.vars模块实战实例3.指定远程主机sudo切换用户4.when模块实战实例5.with_items迭代模块实战实例6.Templates 模块实战…...
Docker - Docker安装MySql并启动
因为项目需要连接数据库,但是远程服务器上的mysql我不知道账户和密码,这个时候便是docker发挥作用的关键时刻了! 目录 docker安装安装gcc卸载老docker(如有)安装软件包设置镜像仓库更新yum软件包索引安装docker启动doc…...
SQL Server 2019导入txt数据
1、选择导入数据 2、选择Flat file Source 选择文件,如果第一行不是列名,就不勾选。 3、下一步 可以看看数据是否是对的 4、下一步 选择SQL server Native Client 11,数据库选择导入进的库 输入连接数据库的名字和要导入的数据库 下一…...
科研 | Zotero导入无PDF的参考文献、书籍
最近在用Zotero在Word中插入参考文献的时候发现,有些没在网上找到对应的PDF版本,但也不是必须要PDF版本的参考文献或者参考书籍,如何才能不影响正常的文献排版 主要是先在网上找到对应文献,书籍,网页等的ISBN…...
【Docker】docker入门之dockerfile编写
文章目录 前言一、docker是什么?docker介绍docker指令 二、docker有什么用?三、docker怎么用?FROMMAINTAINERRUNENVWORKDIRCOPY、ADDUSEREXPOSE实例 四、docker注意事项docker容器中使用某些宿主机设备时需要额外的权限docker容器中文件内容中…...
javaee之黑马乐优商城1
问题1:整体的项目架构与技术选型 技术选型 开发环境 域名测试 如何把项目起来,以及每一个目录结构大概是什么样子 通过webpack去启动了有个项目,这里还是热部署,文件改动,内容就会改动 Dev这个命令会生成一个本地循环…...
滴滴前端一面面经(已挂)
面试过程 前段时间面试了滴滴的前端实习岗位,大厂的面试机会很难得,复习了很多前端知识。 拿到面试机会,是在地铁上投递了boss,当时hr看了我的简历就和我约了第二天的面试。电脑也没带,晚上就用手机复习了前端的一些…...
靠谱的适合上班族做的副业,这几种一定要试试!
作为上班族,我们的时间常常被工作和日常生活所占据,很少有机会去追求自己的兴趣和创造额外的收入来源。然而,副业是一种理想的选择,可以帮助我们实现多样化的发展,并在经济上取得一定的突破。正如书中所言:…...
VSCode连接服务器
Pycharm连接服务器参考我的另一篇文章Pycharm远程连接服务器_pycharm进入服务器虚拟环境终端_Jumbo星的博客-CSDN博客 本质上Pycharm和VSCode都只是IDE,没有什么好坏之分。但是因为Pycharm连接服务器(准确来说是部署)需要买professional。而…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...
毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...
Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...
海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...
