【从零开始的iOS应用开发之旅 - 03】UITabBarController - UIViewController之间的切换与管理
先列举iOS开发快捷键,接着回顾UIViewController展示数据功能,进而讲解其页面切换概念,以健康应用为例说明。介绍负责标签页切换的UITabBarController概念与功能,展示在单一页面工程中创建UITabBarController的步骤及为其底部按钮添加图标的方法。
分享编程心得、开发实践、生活随笔,偶尔聊聊游戏与远方
先列举iOS开发快捷键,接着回顾UIViewController展示数据功能,进而讲解其页面切换概念,以健康应用为例说明。介绍负责标签页切换的UITabBarController概念与功能,展示在单一页面工程中创建UITabBarController的步骤及为其底部按钮添加图标的方法。
介绍iOS开发的MVC概念,即视图View(APP界面由其组成,负责展示内容)、数据Model(展示在视图上的信息)、管理Controller(管理数据在视图的展示逻辑)。着重讲解UIView,包括其展示作用、可组合性、栈管理子View等,用代码验证并介绍其生命周期。还阐述UIViewController的管理作用及生命周期,并通过代码示例展示执行顺序。
开启自学iOS开发新坑,以完成类似BingImage的iOS应用为目标,先介绍准备iOS开发环境需Mac OS操作系统与XCode,接着说明创建首个iOS工程步骤,包括选择模版、填写信息及工程保存路径,最后在ViewController.m文件写入代码实现显示“Hello World!”文本。
收到魅族M2手机显示兼容问题反馈,设置下方和成员一栏背景展示异常,排查发现原代码虽定义颜色和高度但使用的android:gravity="bottom"属性不支持API23以下设备,经权衡用inset标签解决,给出原代码、修改思路及修改后代码。
因需求寻找支持离线下载的开源云盘,尝试按官网说明搭建Cloudreve个人云盘,记录从下载程序包、解压、赋予权限、启动,到添加Aria2实现离线下载支持及Nginx反向代理配置,以搭建可通过域名访问、支持离线下载等功能云盘的过程。
介绍Mac Mini 2020款自行升级内存事宜,提及官方直营店更换内存限制,指出2018、2020款内存可自行更换但SSD不能,详细说明拆机升级内存准备工具及各步骤,包括从底部拆机、拆除散热器、取出主板、更换内存,最后开机验证成功。
重构Android头像组件时发现Canvas绘制头像仅开启画笔抗锯齿仍存在锯齿问题,整理并记录了画笔、画布、Bitmap三种有效的抗锯齿实现方法
Node.js连接MySQL8.0数据库时因加密方式不兼容出现认证模式报错,通过执行指定的MySQL命令修改用户认证方式并刷新权限即可解决该问题
讲解Flutter所用编程语言Dart中extend、implement、with三个修饰符的用法,对比与Java中对应用法的差异,说明implement的隐式接口特性、extend的单继承特点以及with混入的代码复用规则
切换Flutter至v1.10.14版本时遇到命令失效、SDK许可报错、Dart文件相关报错等问题,经排查分别由git换行符配置、SDK路径错误及需删除指定目录导致,最终逐一解决各类故障
Java时间格式化工具SimpleDateFormat在Android开发中存在使用坑点,使用大写Y格式化时间会引发API24以下设备闪退,明确了Y与y的含义区别并给出正确的时间格式化方式
业余开发一款安卓一键切换Host工具,适配安卓6.0及以上系统且需Root权限,在指定机型测试运行正常,拥有备份Host、多文件切换等功能,同时讲解借助Root权限执行相关命令修改系统Host文件的核心实现步骤,并附上应用下载与开源项目地址