用swift开发ios移动端app应用初体验

简介: 直接跟着 apple 官方的 SwiftUI 教程跑的,写惯了 javascript 奔放的代码,很多语法理解起来还是有点费劲

直接跟着 apple 官方的 SwiftUI 教程跑的,写惯了 javascript 奔放的代码,很多语法理解起来还是有点费劲。

定义变量

swift 定义变量用 var,但是定义常量用 let,这个和 javascript 里不同,javascript 里 let 依然是和 var 一样用来定义变量的,定义常量用 const。

kotlin 中定义变量用 var,定义常量用 val。

字符串中插入变量(字符串插值)

swift 字符串插值是在字符串中使用 (),和javascript里的模板字符串${变量}类似,python中可以用 f"Hello, {变量}" 实现,php中可以用直接用花括号{},Java语言没有提供原生的字符串插值功能。

swift

let userName = '周小黑'
var greet = 'Hello, \(userName)'

javascript

const userName = '周小黑'
let greet = `Hello, ${
     userName}`

python

# python3.6 之后版本,字面量格式化字符串
userName = '周小黑'
greet = f'Hello, {userName}'

php

$userName = '周小黑'
$greet = "Hello, {$userName}"
// $greet = "Hello, $userName" // 这种写法也可以,变量名不会和后面的字符连在一起产生歧义也可以不要 {},但是必须要用双引号不能单引号
// $greet = "Hello, ".$userName

Kotlin

val userName = '周小黑'
var greet = "Hello, ${userName}"
var greet2 = "Hello, $userName"

使用系统图标

苹果官方提供了好几千个系统符号可以直接使用,那东西叫 SF Symbols,可以直接在苹果网站下载下来安装到本地就可以直接看到所有的图标,使用的时候提供名字就行了 Image(systemName: "")

遇到的问题:

1. Creating a Card View 这个例子,卡片背景颜色死活不出来

一直是白色的背景,官方示例里第一个卡片是黄色背景,开始一直以为是哪写错了,直接用官方的代码覆盖还是没有背景色,后面看源码才发现 Assets.xcassets 文件夹下还有一个 Themes 的主题色设置的文件,拷贝到自己的项目里,背景颜色就有了。

2. 多个 Preview 删除

手贱点了几下 右边 Preview 最右边的复制添加图标,一下跑出好几个 simulator 模拟视图,找了半天也没找到在哪删,原来你点一个复制,当前视图的代码里就会给你多加一行视图代码,所以自己直接在代码里删除多添加的代码就可以了。

3. 全局搜索替换内容

点 xcode 里的放大镜只发现搜索,死活没找到像 vscode 里辣么方便的替换功能,原来默认的是搜索,自己点下搜索那的面包屑导航上的 Find,那是个下拉菜单,里面还有一个 replace。

4. 隐藏 xcode 左边文件目录

一个显示屏开发,有时还要对照着查看资料,开发工具就只能尽可能缩小,xcode 隐藏左边的文件目录是在左上角,点击那个书本的图标,就可以切换隐藏和显示。

目录
相关文章
|
8天前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
5天前
|
开发框架 移动开发 Android开发
安卓与iOS开发中的跨平台解决方案:Flutter入门
【9月更文挑战第30天】在移动应用开发的广阔舞台上,安卓和iOS两大操作系统各自占据半壁江山。开发者们常常面临着选择:是专注于单一平台深耕细作,还是寻找一种能够横跨两大系统的开发方案?Flutter,作为一种新兴的跨平台UI工具包,正以其现代、响应式的特点赢得开发者的青睐。本文将带你一探究竟,从Flutter的基础概念到实战应用,深入浅出地介绍这一技术的魅力所在。
22 7
|
8天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台解决方案
【9月更文挑战第27天】在移动应用开发的广阔天地中,安卓和iOS两大操作系统如同双子星座般耀眼。开发者们在这两大平台上追逐着创新的梦想,却也面临着选择的难题。如何在保持高效的同时,实现跨平台的开发?本文将带你探索跨平台开发的魅力所在,揭示其背后的技术原理,并通过实际案例展示其应用场景。无论你是安卓的忠实拥趸,还是iOS的狂热粉丝,这篇文章都将为你打开一扇通往跨平台开发新世界的大门。
|
14天前
|
前端开发 iOS开发 开发者
探索iOS开发中的SwiftUI框架
【9月更文挑战第21天】在iOS应用开发的广阔天地中,SwiftUI框架如一股清新之风,为开发者带来了声明式语法的便捷与高效。本文将深入探讨SwiftUI的核心概念、布局方式及数据绑定机制,同时通过实例演示如何运用SwiftUI构建用户界面,旨在引领读者领略SwiftUI的魅力,并激发其对iOS开发新趋势的思考与实践。
33 6
|
14天前
|
安全 Swift iOS开发
探索iOS开发之旅:Swift语言的魅力与挑战
【9月更文挑战第21天】在这篇文章中,我们将一起潜入iOS开发的海洋,探索Swift这门现代编程语言的独特之处。从简洁的语法到强大的功能,Swift旨在让开发者能够以更高效、更安全的方式构建应用程序。通过实际代码示例,我们会深入了解Swift如何简化复杂任务,并讨论它面临的挑战和未来的发展方向。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和知识。
30 4
|
8天前
|
iOS开发 Python
6-8|如何使用Python语言开发IOS混淆工具
6-8|如何使用Python语言开发IOS混淆工具
|
Android开发 iOS开发 开发工具
App移动端性能工具调研
工具 是否开源 平台支持 版本支持 语言 特性支持 具体性能指标 性能结果 插件支持 最新版本更新日期 工具 是否开源 平台支持 版本支持 语言 特性支持 具体性能指标 性能结果 插件支持 最新版本更新日期 GT 开源 Android & iOS Android 4.
1615 0
|
6天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
9天前
|
XML 移动开发 前端开发
使用duxapp开发 React Native App 事半功倍
对于Taro的壳子,或者原生React Native,都会存在 `android` `ios`这两个文件夹,而在duxapp中,这些文件夹的内容是自动生成的,那么对于需要在这些文件夹中修改的配置内容,例如包名、版本号、新架构开关等,都通过配置文件的方式配置了,而不需要需修改具体的文件
|
9天前
|
存储 开发工具 Android开发
使用.NET MAUI开发第一个安卓APP
【9月更文挑战第24天】使用.NET MAUI开发首个安卓APP需完成以下步骤:首先,安装Visual Studio 2022并勾选“.NET Multi-platform App UI development”工作负载;接着,安装Android SDK。然后,创建新项目时选择“.NET Multi-platform App (MAUI)”模板,并仅针对Android平台进行配置。了解项目结构,包括`.csproj`配置文件、`Properties`配置文件夹、平台特定代码及共享代码等。
下一篇
无影云桌面