IOS,SWIFT开发细节杂烩

2024-04-23 01:58
文章标签 开发 细节 ios swift 杂烩

本文主要是介绍IOS,SWIFT开发细节杂烩,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 隐藏NavigationBar左侧返回按钮

想要隐藏导航栏的返回键,需要在页面还没显示之前进行设置,如果在页面的viewDidLoad()中调用setHidesBackButton 是没有用的.

fun showViewController() {//获取storyboard指定Identifier的ViewControllerlet viewController=self.storyboard?.instantiateViewControllerWithIdentifier("selectFloorViewController") as! SelectFloorViewController//隐藏将要显示的ViewController的导航栏返回键viewController.navigationItem.setHidesBackButton(true, animated: false)//将将要显示的ViewController放入导航栈中self.navigationController?.showViewController(viewController, sender: nil)}

  • APP图标设置

如图所示,工程->TARGETS->General->App Icons and launch Images->App Icons Source
选择AppIcon,此时程序会自动用Assests.xcassests里面的AppIcon图片作为图标
图标设置

接下来将想要作为图标的图片放进AppIcon里面
图标设置

注意,在我放图片的那一栏下面,人家已经清清楚楚的告诉你60pt了,也就是60Point( Point 是苹果的分辨率单位,有时候1Point=1Pixel,有时候1Point=2Pixel,这要看在什么设备上),再加上上面的2x/3x,就是说这里要放60*2=120Point或者60*3=180Point的图片作为图标,就不要尝试别的分辨率的图标的,不然肯定会报错的
报错

乖乖放一张120*120pixel的图片到2x上面,在运行程序,command+H切换到Home,就可以看见程序的图标了
图标


  • APP名称更改

用xcode新建一个APP工程,APP的默认名称就是工程名,比如我新建了一个工程叫test ,在模拟器里运行,切换到Home,那么我的APP名称就叫test
项目 项目

现在我想给这个APP起一个好听的名字,OK,我们打开Info.plist文件
plist

点击最上面Information Property List右边的小加号,新加一行配置,找一个叫Bundle display name的属性
bundle display name

看这个属性名字应该明白什么意思了吧,现在给这个属性改成自己喜欢的名字就好了!
icon


  • 嵌入NavigationController的页面加载后上面空出一个NavigateBar的高度

这个问题是由于自动布局引起的,只要关闭相关VC自动布局里的一个属性就可以了,具体看图
Adjust Scroll View Insets
这个属性会自动调整滚动View中插入物的位置,取消选中就OK


  • IOS/SWIFT如何改变状态栏(Status bar)状态

在UIViewController里继承以下方法:

override fun preferrsStatusBarHidden() -> Bool {return true
}

或者

override func preferredStatusBarStyle() -> UIStatusBarStyle {return UIStatusBarStyle.LightContent}

当然你也可以换成其他你想要的UIStatusBarStyle

如果以上方法无用,请往下看
UINavigationController不会在它的子VC(view controller)中调用preferredStatusBarStyle()函数,这意味着如果你的VC是包含在一个UINavigationController里的,那么在这个VC中实现preferredStatusBarStyle()是没用的,那么如何在UINavigationController中设置StatusBarUIStatusBarStyle呢。

UINavigationController中,UINavigationBar.barStyle的属性决定StatusBarStyle。默认的UIBarStyleDefault会导致一个暗色状态栏,UIBarStyleBlack属性会显示一个亮色的状态栏

如果你需要一个亮色的状态栏在UINavigationController中,使用下面的代码在viewdidload()

self.navigationController.navigationBar.barStyle = UIBarStyleBlack;

  • 关于UIView的透明(这一段转载自简书@秋刀生鱼片的文章)

这里请注意UIView的几个不同的属性。

backgroundColor 背景颜色,UIColor类
alpha 颜色中的alpha通道值,这个值范围0-1,等于0时完全透明,等于1时,完全不透明
hidden BOOL型,是否隐藏

这三个属性,都可以实现UIView隐身的效果。例如一个空的UIView,backgroundColor设为[UIColor clearColor]时,背景色是透明的;alpha设为0时,UIView也是透明的;hidden设为YES时,UIView同样不可见。

但他们的区别也很明显,backgroundColor属性的修改,不影响子View,所以子View不会因为父View的backgroundColor设为[UIColor clearColor]而隐藏,同时,父View同样响应触摸链。

而alpha值则不同,渲染时alpha值时一个叠加属性,例如父View透明度为0.5,子View透明度为0.5,这时渲染出来的真实效果,子View的透明的应该为0.5*0.5 = 0.25,所以当父View的alpha为0时,子View也是完全不可见的。另外,alpha为0的View,是不响应触摸链的。

最后这个hidden属性,直接从根源,决定要不要渲染这个View,不像alpha属性,是不需要渲染时计算最终的渲染效果的,因为这个属性为YES时,根本不进行渲染,所以渲染链都断了,子View也不会渲染了,更不会响应触摸了。

原文连接


这篇关于IOS,SWIFT开发细节杂烩的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/927474

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.